@模式(regex=”Spring验证程序

@模式(regex=”Spring验证程序,regex,spring-validator,Regex,Spring Validator,例如,我想验证一个名称。 名称必须由以“”或“-”分隔的单词组成。 例如:“Jean-Luc Melenchon”、“Xavi Hernandez”如果我正确理解了您的要求,您需要一个名称验证程序,其规则是确保每个名称至少包含一个空格或一个连字符(-)。您可以使用以下正则表达式: ^.*(\s|-)+.*$ (\s |-)+表示至少应有一个空格(\s)或连字符(-) *允许空格前后任意数量的字符 将与成功匹配 Jean-Luc Melenchon Xavi Hernandez Lionel

例如,我想验证一个名称。 名称必须由以“”或“-”分隔的单词组成。
例如:“Jean-Luc Melenchon”、“Xavi Hernandez”

如果我正确理解了您的要求,您需要一个名称验证程序,其规则是确保每个名称至少包含一个空格或一个连字符(-)。您可以使用以下正则表达式:

^.*(\s|-)+.*$
  • (\s |-)+
    表示至少应有一个空格(
    \s
    )或连字符(
    -
  • *
    允许空格前后任意数量的字符
将与成功匹配

Jean-Luc Melenchon
Xavi Hernandez
Lionel Messi
Zlatan Ibrahimovic
将与以下内容不匹配(因为它们没有空格或连字符)


如果这是为了做实验,那就把自己弄昏。如果要在实际应用程序中使用,请不要认为您知道什么是有效名称

看看 及

正如帕斯卡·马丁(Pascal Martin)在后者中所说

总有一天,你的代码会遇到一个它认为“错误”的名字。。。当一个应用程序告诉他“你的名字无效”时,你认为会有什么反应


我试过这个,看起来效果不错

[A-Za-zàâéêèìôùûçÀÂÉÊÈÌÔÙÛÇ']+(\\s|\\-[A-Z]+)*

真正地它如何看待这个名字<代码>布兰登道尔顿还是这个?Влади́мир Ильи́ч Улья́нов
[A-Za-zàâéêèìôùûçÀÂÉÊÈÌÔÙÛÇ']+(\\s|\\-[A-Z]+)*