我有一个有效的正则表达式,当用户只能在文本框中输入 1 个单词时。但是,我该如何调整它,以允许 2,3,4,5 个单词?有时,我可能需要更改代码以仅允许 3 个单词,例如。
这是我的正则表达式^([a-zA-Z_'-'.]+)$
用于匹配 2,3,4,5 个单个单词
^('b[a-zA-Z_'-'.]+?'b's*){2,5}$
用于匹配 2 或 4 个单个单词
^('b[a-zA-Z_'-'.]+?'b's*){2}$|^('b[a-zA-Z_'-'.]+?'b's*){4}$
or
^(('b[a-zA-Z_'-'.]+?'b's*){2}|('b[a-zA-Z_'-'.]+?'b's*){4})$
但它在测试下失败了 abc.def
和 abc_def
=( 它找到了两个词。 'b
你的词汇[a-zA-Z_'-'.]+
是错误的想法......
好的,就是这样。
对于2,3,4,5个单词
^([a-zA-Z_'-'.]+[^a-zA-Z_'-'.]+){1,4}[a-zA-Z_'-'.]+$
请注意,现在最后不允许使用非字母符号。