2011-12-19 125 views
0

我有一个字符串$test='23487°';如何使用preg替换删除此?

如何使用preg替换删除出现在字符串中的小圆圈的所有实例?

什么我输入正则表达式来删除它?

编辑 - 正如佩卡所说,str_replace更好,我现在正在使用它。但小圆圈仍没有被认可的PHP ...

+5

'str_replace()函数'将完成这项工作。不需要'preg' – 2011-12-19 17:54:45

+1

@ David19801您是否正在通过浏览器查看输出结果?确保度数符号(圆形)实际上是度符号而不是'°' – 2011-12-19 18:08:15

+0

正确的迈克,它显示为符号,但我在源代码中找到#174和str_replaced。 – David19801 2011-12-19 18:10:09

回答

3

你不需要正则表达式,只是str_replace

$test = str_replace('°', '', $test); 

第一个参数是搜索词 - 将发现的位。第二个参数是替换字符串 - 将被插入的文本。空白字符串表示“用空白替换”,即“删除它”。第三个参数是要操作的字符串。

+0

PHP似乎无法识别小圆圈字符(温度符号)... – David19801 2011-12-19 17:59:37

+0

@ David19801适用于我...... – lonesomeday 2011-12-19 18:00:27

+0

已解决:显示为页面上的学位符号,但在源代码中显示为#176。谢谢。 – David19801 2011-12-19 18:03:40

0

尝试:

$test = preg_replace('/[^(\x20-\x7F)]*/','', $test); 

这将替换从字符串所有非ASCII字符。