我有一个函数可以将随机点添加到字符串中并将更改的字符串存储在变量中,但是,有时它会在一行中添加多个点。例如:
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来表达这一点?我不知道从哪里开始。
答案 0 :(得分:3)
您可以编辑您的功能,使其不再添加多个点。无论如何,如果这不是函数的预期行为,请将preg_replace
应用于其输出以消除这些多个点。假设$str
是函数的输出。然后:
$str = preg_replace("/\\.{2,}/", ".", $str);
答案 1 :(得分:2)
使用正则表达式:
$string = preg_replace('/\.{2,}/', '.', $string);
{2,}
表示前面两个或多个表达式,即文字.
。
转到regular-expressions.info了解有关正则表达式的所有信息。