Codeigniter URL Helper的正则表达式帮助

时间:2014-10-06 14:05:23

标签: php regex codeigniter codeigniter-2 slug

在CI url_title()函数中,它会从字符串中删除点,而我想用$seperator替换。这是url_title()的正则表达式替换数组。

$trans = array(
  '&.+?;'                 => '',
  '[^a-z0-9 _-]'          => '',
  '\s+'                   => $separator,
  '('.$q_separator.')+'   => $separator
);

$str = strip_tags($str);

foreach ($trans as $key => $val)
{
   $str = preg_replace("#".$key."#i", $val, $str);
}

如何更改$trans数组,以便它可以用$separator替换“。”,“%”,“+”字符。

另一个是“%20”没有返回。怎么预防呢?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

试试这个:

$trans = array(
  '&.+?;'                 => '',
  '[^a-z0-9 _-]'          => '',
  '\s+'                   => $separator,
  '('.$q_separator.')+'   => $separator,
  '\.'                    => $separator,
  '\+'                    => $separator,
  '%'                     => $separator
);