我知道有很多不同的正则表达式问题,但我找不到匹配的问题:
我需要验证输入字段,该字段应包含字符串+空格+字符串。在字符串内部,应该允许所有字符(ö,ä,ü,á,é)。
有效示例:
a b
乔治迈克尔
这是gööd
示例无效:
乔治
迈克尔
乔治·迈克尔
总而言之,我想检查一个人是否只写了它的名字,还是两个,名字和姓氏。我很感激任何建议。
答案 0 :(得分:1)
此正则表达式应该可以帮助您确认此人同时使用名字和姓氏(2个名称,而不是3个或更多名称)。
<强>更新强>
现在匹配第三个单词
\S+ \S+(?: \S+)?
这里的工作示例:https://regex101.com/r/Tpo8gy/3
答案 1 :(得分:1)
如果您使用的语言允许使用unicode属性(perl,php,python,...),您可以这样做:
\p{L}+\s+\p{L}+
这将匹配由一个或多个sapces分隔的任何lang中的两个单词。
如果你可以有超过2个单词但至少有两个单词:
\p{L}+\s+\p{L}+(?:\s+\p{L}+)*
\p{L}
代表任何语言的任何字母。