如何将两个或多个破折号转换为单个并删除字符串开头和结尾的所有破折号?

时间:2009-04-12 10:07:08

标签: php regex

示例:-this--is---a-test--

我想要的是什么:this-is-a-test

感谢您的回答! :)

2 个答案:

答案 0 :(得分:18)

我会使用preg_replacetrim的组合:

trim(preg_replace('/-+/', '-', $str), '-')

preg_replace调用会删除多个短划线,trim会删除前导和尾随短划线。

答案 1 :(得分:0)

没有正则表达式....

$string = trim($string,'-');

while (stristr($string,'--')) {$c = str_ireplace('--','-',$string);}