可以使用preg_replace()函数删除非字母数字字符。此函数执行正则表达式搜索和替换。函数preg_replace()搜索由pattern指定的字符串,如果找到则用替换替换模式。
代码示例:
方法1:正则表达式'/ [\ W] /'匹配所有非字母数字字符,并用''(空字符串)替换它们。
$str = preg_replace( '/[\W]/', '', $str);
在正则表达式中,W是一个元字符,前面是反斜杠(\ W),用于赋予组合特殊含义。它表示非字母数字字符的组合。
例:
?php
// 包含非字母数字字符的字符串
$str="!@php.cn2019?";
// preg_replace函数删除
//非字母数字字符
$str = preg_replace( '/[\W]/', '', $str);
//打印字符串
echo($str);
?>
输出:
方法2:正则表达式'/ [^ a-z0-9] / i'匹配所有非字母数字字符,并用''(空字符串)替换它们。
$str = preg_replace( '/[^a-z0-9 ]/i', '', $str);
在正则表达式中:
i:它用于不区分大小写。
az:它用于所有小写字母,因为在语句中已经提到过i(不区分大小写),所以不需要指定AZ。
0-9:用于匹配所有数字。
?php
//包含非字母数字字符的字符串
$str="!@php.cn2019?";
// preg_replace函数删除
//非字母数字字符
$str = preg_replace( '/[^a-z0-9]/i', '', $str);
//打印字符串
echo($str);
?>
输出:
phpcn2019
preg_replace句法:
int preg_match( $pattern, $replacement_string, $original_string )
参数:该函数接受如上所述的三个参数,如下所述:
$pattern:在字符串中搜索的模式。它必须是正则表达式。
$replacement_string:匹配的模式由replacement_string替换。
$original_string:这是完成搜索和替换的原始字符串。
返回值:
更换发生后,将返回修改后的字符串。
如果未找到匹配项,则原始字符串保持不变。
您可能感兴趣的文章:- php使用strpos判断字符串中数字类型子字符串出错的解决方法
- 正则匹配密码只能是数字和字母组合字符串功能【php与js实现】
- PHP指定截取字符串中的中英文或数字字符的实例分享
- PHP中strcmp()和strcasecmp()函数字符串比较用法分析
- 实例分析PHP将字符串转换成数字的方法