在我网站的一部分中,我有一个如下所示的网址:
http://www.webizzi.com/mp3/search.html?q=+Hush+Hush+-+(Avril)++Lavigne的+
我想通过剥离除了+之外的网址上显示的每个特殊字符来保留一个更清晰的网址。但我也不希望在网址的开头或结尾有类似++或+的内容,网址应该看起来喜欢下面的那个
http://www.webizzi.com/mp3/search.html?q=Hush+Hush+Avril+Lavigne
目前我必须处理的是:
{$config.siteurl}search.html?q={$tags[row].tag|regex_replace:"/\s+/":"+"|stripslashes}
答案 0 :(得分:1)
假设您的输入是?q=
s/(^\++|\++$|\+\++|[\(\)]+)//g
在最后一对括号中,您可以放置任何其他要删除的字符。
这匹配一个或多个开头+,一个或多个结束+,两个或多个+的任意位置,或一个或多个括号内的特殊字符(到目前为止,只是括号)并替换为什么 - 空字符串 - zilch - nada。
我不知道关于Smarty的杰克,但我认为你应该尝试像
这样的东西{$config.siteurl}search.html?q={$tags[row].tag|regex_replace:"/(^\++|\++$|\+\++|[\(\)]+)/":""|stripslashes}
我不太确定你是否需要在这里省略括号,所以如果它不起作用,就会丢失一些反斜杠。
答案 1 :(得分:0)
href =" {$ site_url} tests / tests / view / {$ test.test_id} / {strtolower($ test.test_name | replace:'':' - ' | regex_replace:' /(^ ++ | ++ $ | +++ | [()] +)/':'')}&#34 ;>试验