2013-02-19 90 views
3

我有一个php reg表达式,它从任何字符串中删除任何特殊字符并用连字符替换该字符。问题是,如果有两个特殊字符跟在一起,我会得到两个连字符。例如,如果我输入文本[email protected]%^我得到test-hhh--或者如果我输入[email protected]%^kkk我得到test-hhh--kkk。我想我的表达给我test-hhh。我想删除两个相同的连字符,并加上字符串中的任何尾随连字符。我的代码是在这里删除两个相似的字符和其他尾随字符的表达式

$slug = preg_replace('/[^a-zA-Z0-9]/', '-', $slug); 

回答

2

首次采用此正则表达式你的字符串:

其次,你申请的权利装饰(或定期一人),连字符作为一个额外的参数。

$slug = trim($slug, '-'); 
相关问题