2

我正在尝试[number].word word word在文本中搜索格式的字符串,例如:1.Test number one 我正在使用的模式$pattern = '~\d+[.][\s]*[A-Z]{1}[\w\d\s]+~',但问题是模式找不到带撇号的字符串,例如5.That's a valid string 我也尝试过使用$pattern = '~\d+[.][\s]*[A-Z]{1}[\w|\d|\s|\']+~'但它也不起作用.

我怎样才能修复正则表达式,以便它也可以检测带有撇号的字符串?

谢谢 !

4

1 回答 1

1

使用以下正则表达式:

/^\d+\.\s*(?:[\w']+ *)+$/

现场演示:http ://www.rubular.com/r/0CBEb8jbnK

解释:

^  -> Start of match
$  -> End of match
?: -> Non capturing group

PS:如果您的正则表达式字符串使用单引号,您可能需要在 PHP 引号中转义单引号。

于 2013-03-14T21:07:21.520 回答