试图寻找全名的正则表达式,似乎找不到一个。
理想情况下会匹配
Tom Franklin
tom Franklin
tom franklin
tom franklin-jones
即。允许中间有1个空格和一些基本的连字符等,但这就是全部。有谁知道怎么做?
修改:包括
René Hadron van der Ööps
答案 0 :(得分:1)
您可以使用/([\p{L}'-]+) ([\p{L}'-]+)/
来捕获所有可能的字母。或/([a-z'-]+) ([a-z'-]+)/i
仅捕获ascii字母。
小组([\p{L}'-]+)
表示[\p{L}'-]
至少重复一次。 \p{L}
表示任何unicode 字母。最后的-
表示名称中允许使用“ - ”。
注意:
使用[]
捕获字符时,连字符必须位于字符集的开头或结尾处。
修改:
先生。奥布莱恩现在很高兴。
资源:
答案 1 :(得分:0)
\ W + \ S + [A-ZA-Z - ] +