利用PHP怎么对字符串中非字母数字的字符进行删除?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
可以使用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); ?>
输出:
phpcn2019
方法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怎么对字符串中非字母数字的字符进行删除问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。