我有以下字符串:
made by order 7-10 days work Ekspres order 3-5 days work (+10k) ------------------------------------------- Bisa dipesan dengan model jumper
我希望删除字符串中的任何2个或更多连续短划线,所以在上面的情况下我想在字符串中保留3-5,但我想删除此字符串中可怕的长短划线。我该怎么做?
答案 0 :(得分:3)
使用preg_replace功能,
preg_replace('~-{2,}~', '', $string);
-
与文字-
匹配,以下{2,}
会重复前一个字符两次或更多次。这将匹配2个或更多连续破折号。用空字符串替换匹配的短划线将为您提供所需的输出。
答案 1 :(得分:0)
为了完整起见,这有相同的结果:
preg_replace('/--+/', '', $string);
有人向我指出这个问题,询问应该使用哪个版本,我说使用你喜欢的版本,他们都做同样的但是第一个(接受的回答)会更短,因为你没有&# 39; t必须输入重复字符(" - ") n 次。
此外,您可以使用" /" {} 版本中的分隔符,这在php中更常见。
preg_replace('/-{2,}/', '', $string);