如何使用Python正则表达式模式匹配re.findall(模式,字符串)



我需要匹配字符串"Johnson";以及";Jackson";,但不是字符串";杰森"使用Python时,我需要使用RegEx库中的函数findall。

我试过了:

a = "Jackson, Johnson, Jason"
b = re.findall("J*w{2}*son", a)

但它没有起作用!如果有人能帮上忙,我将不胜感激!

findall只使用字符串作为输入,而不使用列表。

您可能想要使用mapre.matchre.search,例如:

此外,您的正则表达式中有多个重复符号,需要进行一些调整,这一个似乎适用于Jw{3}son

import re
a = ["Jackson", "Johnson", "Jason"]
c = list(map(lambda x: re.search("Jw{3}son",x), a))
print([i.string for i in c if i])

输出:

['Jackson', 'Johnson']

更新如果您的输入类型只是一个字符串,那么您的原始表达式就可以了,您只需要将正则表达式更改为上面的示例

import re
a = "Jackson Johnson Jason"
b = re.findall("Jw{3}son", a)
print(b)

输出:

['Jackson', 'Johnson']

相关内容

  • 没有找到相关文章

最新更新