我必须从php字符串中删除和替换ASCII换行符(nl)和载体回车字符(cr)。
我尝试使用以下语句将$input中的所有ASCII (nl)字符替换为空格,但不起作用:
preg_replace('/[\x0a]+/',' ',$input);然后我尝试用空格替换所有的ASCII控制字符,下面是语句:
ereg_replace('[[:cntrl:]]', ' ', $encoded); // didn't work我也尝试了以下语句,但没有成功:
ereg_replace("[:cntrl:]", "", $pString);
preg_replace('/[\x00-\x1F\x7F]/', '', $input);
preg_replace('/[\x00-\x09\x0B\x0C\x0E-\x1F\x7F]/', '', $input);从php字符串中删除ASCII换行符(nl)和回车字符(cr)的正则表达式是什么?
我在下面提到了几个链接:
ASCII Table
Regular Expressions
Regular expression posix
发布于 2011-08-20 17:29:12
你不能直接使用str_replace吗
str_replace( array("\n", "\r"), "", $stringinput );发布于 2011-08-20 17:30:25
为什么要使用regexp?有什么问题吗
str_replace(array("\n", "\r"), "", $string);?在PHP中,字符\n和\r被保证是实际的换行符和回车符:http://php.net/manual/en/language.types.string.php
发布于 2011-08-21 01:53:36
如果你坚持使用preg_replace()来完成这样一个简单的任务,你可以使用:
$result = preg_replace('/[\r\n]/', '', $subject);不过,你应该像以前建议的那样使用str_replace(array("\n", "\r"), "", $string);。
https://stackoverflow.com/questions/7130891
复制相似问题