我想使用正则表达式限制所允许的字符。也就是说:
a - z /* a to z */
A - Z /* A to Z */
0 - 9 /* 0 to 9 */
_ - /* underscore & dash */
~ ! @ # $% ^ & * () /* allowed special characters */
这是我的正则表达式函数:
function validChr($str) {
return preg_match('/^[A-Za-z0-9_~\-!@#\$%\^&*\(\)]+$/',$str);
}
我实际上已经尝试过它并得到了我想要的结果,但我仍然不确定。我的正则表达式是否正确?还有其他形式的正则表达式吗?由于我对正则表达式还很新,请帮忙。谢谢。
*
,因为它是通配符(在你的代码中表示字符串中没有或任意数量的 & 符号)。 - Rodion Baskakov*
在方括号中间,我相信你不需要转义它。 - Pigueiraspreg_match('/^[A-Za-z0-9_~\-!@#\$%\^&\*\(\)]+$/',$str);
? - Fredy