[英]Javascript regex to accept only letters, spaces, and ñ
I am looking for a Javascript regex to make sure the string contains only spaces, letters, and ñ — case insensitively.我正在寻找一个 Javascript 正则表达式来确保字符串仅包含空格、字母和 ñ — 不区分大小写。
I already tried: /^[A-Za-z _]*[A-Za-z][A-Za-z _]*$/
but it fails to accept ñ
.我已经尝试过:
/^[A-Za-z _]*[A-Za-z][A-Za-z _]*$/
但它无法接受ñ
。
/^[ñA-Za-z _]*[ñA-Za-z][ñA-Za-z _]*$/
and和
/^[\u00F1A-Za-z _]*[\u00F1A-Za-z][\u00F1A-Za-z _]*$/
should work.应该管用。
Javascript regex supports \
through \
. Javascript 正则表达式支持
\
到\
。
If you simply want that caracter, insert it in the Regex, like [A-Za-zÑñ ]
.如果您只是想要该字符,请将其插入正则表达式,例如
[A-Za-zÑñ ]
。 Otherwise use a Unicode-knowing Regex library for Javascript like http://xregexp.com/ .否则,请为 Javascript 使用支持 Unicode 的 Regex 库,例如http://xregexp.com/ 。 Sadly JS Regexes don't support Unicode compliant character classes (like
\\p{L}
in C# regexes)遗憾的是,JS 正则表达式不支持 Unicode 兼容的字符类(如 C# 正则表达式中的
\\p{L}
)
您需要使用字符类。
/[A-Za-z ñ]+/
This worked out for me /^[a-zA-ZáéñóúüÁÉÑÓÚÜ -]*$/
a shorter version from @tchris t answer ^^这对我
/^[a-zA-ZáéñóúüÁÉÑÓÚÜ -]*$/
@tchris t answer 的较短版本 ^^
这对我有用,允许使用 ñóíú 和空格等 utf8 字符
const validationsLetters = /^[a-zA-Z\u00C0-\u00FF ]*$/;
With this it forces not to have spaces at the beginning but if later有了这个,它强制在开始时没有空格,但如果稍后
/^[a-zA-Z\u00C0-\u00FF][a-zA-Z\u00C0-\u00FF\s]*$/
..for email you can use: ..对于电子邮件,您可以使用:
/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
..for password you can use: ..对于密码,您可以使用:
/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,}$/i
I hope it works for you like it did for me, good look..!我希望它对你有用,就像对我一样,好看..!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.