我想要一个reg exp用于生成SEO友好的URL,所以像这样的事情:
My product name
Run Code Online (Sandbox Code Playgroud)
变
My_product_name
This is a long,long,long!!sentence
Run Code Online (Sandbox Code Playgroud)
变
This_is_a_long_long_long_sentence
Run Code Online (Sandbox Code Playgroud)
基本上所有非字母数字字符都被删除并替换为下划线.
有任何想法吗?
Wim*_*Wim 25
preg_replace('/[^a-zA-Z0-9]+/', '_', $sentence)
基本上它会查找任何非字母数字字符序列,并将其替换为单个"_".这样,您还可以避免在输出中连续输入两个_.
如果是URL,您可能还希望它们仅为小写:
preg_replace('/[^a-z0-9]+/', '_', strtolower($sentence))
$a = preg_replace("/[^A-Za-z0-9]+/", "_", $str);
Run Code Online (Sandbox Code Playgroud)
或/\W + /如果要保留当前语言环境中被视为"字母"的所有内容
更换后,可能还需要设置前导和尾随下划线
$a = trim($a, '_');
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5818 次 |
最近记录: |