2024-09-30 00:25:48 发布
网友
我如何创建一个正则表达式来匹配两个字符
从字符串“bar x12y bar x30y foo”中,我想得到x12y和x30y。我试着跟着
re.findall( "x(.*?)y", "bar x12y bar x30y foo")
我得到12和30,但我想也包括x和y,我怎么能做到呢
您可以使用非捕获组来实现您的目的
re.findall(r'x(?:.*?)y', "bar x12y bar x30y foo")
更好的正则表达式是
正则表达式:\bx\d+y\b
\bx\d+y\b
您可以只在捕获组中包含x和y。因为您的模式只定义了一个组,所以可以完全省略括号:
x
y
re.findall("x.*?y", "bar x12y bar x30y foo")
您可以使用非捕获组来实现您的目的
更好的正则表达式是
正则表达式:
\bx\d+y\b
您可以只在捕获组中包含
x
和y
。因为您的模式只定义了一个组,所以可以完全省略括号:相关问题 更多 >
编程相关推荐