Python:在多个CSS选择器的复杂列表中使用regex来提取它们的ţ和。标签

2024-09-30 05:27:21 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有更简单的方法来检查字符串是否与特定模式匹配并从该模式中检索组?你知道吗

我想浏览一个带有{readlines}的文件,并收集引号之间包含内容的任何行:

 **{**

 **"simpleSelectors": [**

 "*",**

如果这些是我文件中的行,我的列表中应该有['simpleselector','*']

regexline = re.compile('\"(.*)\"')
for i in css:
    if re.search(regexline, i):
        x = re.search(regexline, i)
        inputs.append(x.group(1))

Tags: 文件方法字符串re内容列表forsearch
2条回答

你可以用关于芬德尔在所有线路上使用:

matches = re.findall(regexline, css)

你不需要在每一条线上都循环。无需在正则表达式中使用引号:

import re

css='{\n\n"simpleSelectors": [\n\n"*",'

inputs = []
regexline = re.compile('"(.*)"')
matches = re.findall(regexline, css)
print( matches) # ['simpleSelectors', '*']

编辑: 要细分匹配项,请使用

matches = [item for match in re.findall(regexline, css) for item in match.split()]

相关问题 更多 >

    热门问题