从PHP字符串中删除控制字符
如何从PHP字符串中删除STX等控制字符?我玩过
preg_replace("/[^a-zA-Z0-9 .\-_;!:?äÄöÖüÜß<>='\"]/","",$pString)
但发现它消除了很多麻烦。有没有办法 只 删除 控制字符?
回答:
如果用控制字符表示前32个ASCII字符和\x7F
(包括回车等),那么它将起作用:
preg_replace('/[\x00-\x1F\x7F]/', '', $input);
(请注意单引号:双引号的使用\x00
会以某种方式导致解析错误。)
可以这样删除换行和回车符(通常写为\r
和\n
),以免删除:
preg_replace('/[\x00-\x09\x0B\x0C\x0E-\x1F\x7F]/', '', $input);
更好[:cntrl:]
地传达了代码的作用[\x00-\x1F\x7F]
。
ereg_replace
PHP> = 5.3.0中已弃用,而PHP> =
7.0.0中已将其删除!,请使用preg_replace
代替ereg_replace
:
preg_replace('/[[:cntrl:]]/', '', $input);
以上是 从PHP字符串中删除控制字符 的全部内容, 来源链接: utcz.com/qa/405782.html