Python正则表达式零或多个出现

时间:2014-04-16 14:36:42

标签: python regex match

I can\'?t (.*)

我的正则表达式是上述形式。但是如果给定的字符串在t

之后结束,我的匹配对象就不匹配

re.compile(r'I can\'?t (.*)').match(str)

如果str ="我不能",它不起作用。但是如果str ="我不能使用"它可以工作(匹配返回一些东西)。

2 个答案:

答案 0 :(得分:2)

您在t之后留下了一个必填空格。删除它,你会没事的:

I can\'?t(.*)

另请注意,括号仅在您要使用第一个捕获组的内容时才有用,否则您可以安全地删除它们。

答案 1 :(得分:0)

为此你可以这样做:

re.compile(r'I can\'?t.*').match(str)

这将匹配"I can't"以及其他一些文字或仅"I can't"