2013-05-20 22 views
6

我想在给定的字符串中用三个句点(...)替换水平椭圆(...)。
直到现在我都试过有:如何匹配水平椭圆(...)php

str_replace('…','...', $text);
str_replace('…', '...', $text);
str_replace('&hellips', '...', $text);

但没能获得所需的输出。你能为它提出一些建议吗?

编辑:我面对与这个
还有一个问题是,当我贴上〜...〜U字在我的编辑器(我用的Editplus)。 ...被转换成矩形。 (见屏幕截图)。 enter image description here

感谢

+0

,首先会工作,但是你需要指示你的编辑器该文件是UTF-8。这也将解决“编辑”问题。 – Jon

+0

@Jon我的编辑器编码已经是UTF-8 – jimy

+0

你的第一个方法[应该可以正常工作](http://3v4l.org/Q4p51)。我想说,你只是简单地从HTML渲染视图的视觉检查中猜出那个字符是什么。此外,我很好奇你为什么认为你需要删除该字符。 –

回答

2

尝试使用与/ u修饰符的preg_replace(该字符串被视为一个Unicode字符串):

$result = preg_replace('~…~u', '...', $string); 
+0

查看我编辑的问题 – jimy

+0

@jimy:尝试输入自己的字符 –

+1

我该怎么做?哪个关键字(或组合)关键字会给那个? – jimy

2

尝试这个

str_replace('…', '...', htmlentities($text)); 
+0

没有运气......省略号在应用时省略号转换为一些有线字符 – jimy

+0

这对我有用: 'str_replace('& hellip;','',htmlentities($ str)) ;' – Gerben