如何检查正则表达式字符串空格字符串?

时间:2017-01-24 16:40:56

标签: regex

我知道有很多不同的正则表达式问题,但我找不到匹配的问题:

我需要验证输入字段,该字段应包含字符串+空格+字符串。在字符串内部,应该允许所有字符(ö,ä,ü,á,é)。

有效示例:

  

a b

     

乔治迈克尔

     

这是gööd

示例无效:

  

乔治

     

迈克尔

     

乔治·迈克尔

总而言之,我想检查一个人是否只写了它的名字,还是两个,名字和姓氏。我很感激任何建议。

2 个答案:

答案 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}代表任何语言的任何字母。