我想验证用户输入的文本。条件是文本应包含字母数字字符、散列(# symbol)和单词之间的空格。对于它,我使用以下代码,但它不接受#(哈希)符号,每次返回FALSE。有人能在这方面帮助我吗,这样我就能回归真实了?
<?php
$validate = alpha_num_symbol($field_value);
function alpha_num_symbol($str) {
return (! preg_match("/^[a-zA-Z0-9's'.,!?]*$/",$str)) ? FALSE : TRUE;
}
?>
您是否尝试更改您的正则表达式字符组以具有哈希符号?/^[a-zA-Z0-9's'.,!?#]*$/
使用模式/^[a-zA-Z0-9's'.,!?#]*$/
它适合我。
正则表达式/^[a-zA-Z0-9's'.,!?]*$/
包含一个匹配0次或0次以上的字符集[a-zA-Z0-9's'.,!?]
。在该字符集中没有散列符号,但是根据您的描述,还有其他您不想匹配的字符。我将使用这个正则表达式:
"/^[a-zA-Z0-9 #]*$/"