我需要验证用户输入。

允许使用所有英文字母和符号“。”,“-”,“&”,“'”,“&”。不允许使用其他符号。

我有下一个RegExp,可用于字符串“fffц”:

var myRegExp = new RegExp("[a-z]+","ig")
myRegExp.test("fffц") // return false


但这不适用于字符串“fffцfff”:

var myRegExp = new RegExp("[a-z]+","ig")
myRegExp.test("fffцfff") // return true, but string contains Russian letters, I expected false


如何编写正确的正则表达式?

最佳答案

您具有[a-z]+,这意味着“在任何地方至少匹配一次字母字符”。您需要使用锚点

^[a-z.& '-]+$

10-07 15:59