我有这个正则表达式:https://regex101.com/r/bM5sQ0/2
<input type="text" pattern="[\p{L}]+\s[\p{L}]+">
我尝试匹配以下文本模式:
Firstname Surname
Fírstnámé Súrnámé
并且不符合这些界限:
Firstname Surname000
Fírstnámé Súrnámé000
我想通过定义每个unicode字母来全球解决这个问题(如果有人不是匈牙利人,而是波兰人,德国人,法国人或西班牙人,而不是我没有包含特殊字符?)。但是我的解决方案不起作用。
答案 0 :(得分:3)
我可以轻松地告诉您为什么您的解决方案不起作用。如果你看看regex101.com上的解释,你会看到:
\p
字面匹配字符p
(区分大小写)
{L}
列表{L}
中的单个字符(区分大小写)
JavaScript不支持构造\p{}
。如果你真的希望他们支持它,我建议你在这里尝试解决方案:https://stackoverflow.com/a/8933546。
如果您不喜欢数字,那么您可以在评论中使用\D
作为tamas rev。