php 标点符号反转,PHP删除标点符号(无破折号)

我在stackoverflow上找到了下面的脚本,它用破折号替换了特殊字符,以便清理url构建.但是,它并没有做得很好,因为它用破折号替换标点符号,如下面的“坏”示例所示.所以,相反,我想特别标点符号不要被任何东西替换,只是被删除…没有空格,没有破折号.任何有关这方面的帮助将不胜感激.

例:

today's weather is hot!

好:

todays-weather-is-hot

坏:

today-s-weather-is-hot-

这个脚本做了不好的例子……如何让它做得好?

function slugUrl($string) {

$string = strtolower($string);

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

$string = preg_replace("/(-){2,}/",'$1',$string);

return $string;

}

解决方法:

那这个呢? (我刚刚删除了标点符号)

function slugUrl($string){

$string = strtolower($string);

$string = preg_replace('/[!?\']/','',$string);

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

$string = preg_replace("/(-){2,}/",'$1',$string);

return $string;

}

标签:php,replace,character

来源: https://codeday.me/bug/20190529/1180206.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值