【发布时间】:2013-01-23 21:28:36
【问题描述】:
我正在寻找一个匹配句子中第一个单词的正则表达式,不包括标点符号和空格。例如:“This is a sentence”中的“This”。和“首先,我想说“你好!”中的“第一”
这不起作用:
"""([A-Z].*?(?=^[A-Za-z]))""".r
【问题讨论】:
-
这是什么风格的正则表达式?
-
单词中可以有数字吗?
-
([a-z]+),不区分大小写,对于“简单”的英语应该足够了。但是,对于非拉丁字符,它很快就会失败 - 所以适当地更新为use Unicode character classes!请注意,这假设一个 NFA 正则表达式(如 Ruby :D)将“匹配它可以匹配的第一件事”,但这在这里很有用,因为不需要锚定或其他复杂的环视。 -
句子的开头或字符串的开头,就像你的例子一样?什么是关于例如“这不是个好主意!”或“Fürchterlichéß Beispiel”。 (只是一个例子!)?