python过滤字符串以返回列表

标签 python regex string

我想过滤给定的句子并提取所有被单引号括起来的字符串并返回一个列表。

例如,示例输入:

"Welcome to 'Jungle', is a song by American rock band 'Guns N Roses' released in 1987."

输出:

['Jungle', 'Guns N Roses']

解释: String - "Jungle" 是用单引号括起来的,所以我们要挑这个。同样 - Guns N Roses。所以输出的列表中有 2 个字符串。另一个示例输入:

"How are (you, doing today)"

输出:

[]

解释: 单引号之间没有任何内容,因此返回空列表。 我尝试使用 split 函数按单引号拆分,但意识到这不是正确的方法。你能帮我看看如何在 python 中做到这一点吗?

最佳答案

使用正则表达式 --> re.findall

例如:

import re

s = "Welcome to 'Jungle', is a song by American rock band 'Guns N Roses' released in 1987."
print(re.findall(r"'(.*?)'", s))

输出:

['Jungle', 'Guns N Roses']

关于python过滤字符串以返回列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55135877/

相关文章:

python - Numpy 输入/输出 : convert % percentage to float between 0 and 1

python - 新手的 Python 正则表达式列表?

java - 单个正则表达式可在两个字符串之间查找字符串或仅以单个字符串开头

c - 解决指向字符串的指针中的段错误

python - Twitter API - 如何获取 OAUTH_FILE?

Python 锁定实现(带线程模块)

python - 将 Python 脚本连接到 SQL Server

javascript - 通过 JS 正则表达式从字符串中检索数字

string - 从字符串中删除反斜杠

c - 为什么 snprintf 复制不同的值,即使每次都将相同的变量复制到字符串数组