PHP 正则表达式验证


PHP Regular Expression validation

我在PHP中有以下代码块用于验证,但我无法弄清楚为什么我的验证仍然失败。我是正则表达式的新手,但我想允许 ($ , . -) 但它不起作用。我从"[A-Za-z0-9]"开始。以下代码允许的唯一字符是短划线 (-),但不是 $ 或 。或 ,或空格。有人可以指出我正确的方向吗?

case 'alnum':
{
        $bret= $this->test_datatype($input_value,"[A-Za-z0-9's$,.-]");
        if(false == $bret) {
            $default_error_message = sprintf(E_VAL_ALNUM_CHECK_FAILED,$variable_name);
        }
    break;
                            }

您可以在不起作用的字符(即 $ 等)之前使用反斜杠。

$bret= $this->test_datatype($input_value,"[A-Za-z0-9's'$','.-]");