PHP如果字符重复多次

时间:2013-12-28 02:10:43

标签: php detection repeat

我有一个函数可以将随机点添加到字符串中并将更改的字符串存储在变量中,但是,有时它会在一行中添加多个点。例如:

te...stin.g

t..e.st.in.g

te.st.in....g

......等等。

我想知道,如何检测一行中是否有多个点,并将它们合二为一。例如,上面的第一个字符串将成为:

te.stin.g

第二个......

t.e.st.in.g

第三......

te.st.in.g

......等等。

我如何用PHP来表达这一点?我不知道从哪里开始。

2 个答案:

答案 0 :(得分:3)

您可以编辑您的功能,使其不再添加多个点。无论如何,如果这不是函数的预期行为,请将preg_replace应用于其输出以消除这些多个点。假设$str是函数的输出。然后:

$str = preg_replace("/\\.{2,}/", ".", $str);

答案 1 :(得分:2)

使用正则表达式:

$string = preg_replace('/\.{2,}/', '.', $string);

{2,}表示前面两个或多个表达式,即文字.

转到regular-expressions.info了解有关正则表达式的所有信息。