全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

IP归属甄别会员请立即修改密码
查看: 2889|回复: 4
打印 上一主题 下一主题

[Windows VPS] 求一个php字符处理函数,截取字符串里面的网站首页用的...

[复制链接]
跳转到指定楼层
1#
发表于 2013-4-25 15:23:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
30金钱
本帖最后由 joyanhui 于 2013-4-25 16:02 编辑

之前问的有点复杂了,没有重点了。重新编辑一下问题。


php怎么把 一段字符串里面 所有 非英文、非数字替换成“|” 但是保留:“.”、“-”、“|”这三个符号

对正则不太懂,求指教!!!



$str = preg_replace('/[^0-9a-zA-Z]+/','',$str);

这个 好像 把要保留的字符串 给过滤掉了

自己找到了

                $str = preg_replace('/[^\dA-z\.\-|]+/','|',$str );

2#
发表于 2013-4-25 15:31:09 来自手机 | 只看该作者
先判断后缀,再向前匹配。
3#
 楼主| 发表于 2013-4-25 15:34:22 | 只看该作者
SKIDROW 发表于 2013-4-25 15:31
先判断后缀,再向前匹配。

我想的算法是先替换所有的 非英文非数字非“.”非“-”为“|”。然后吧相邻的|合并成一个|。
而后通过|把字符串拆分到数组,检查每一段 是否包含域名后缀。优先检查.com.cn这样的长后缀。然后返回第一个就行了。
4#
发表于 2013-4-25 15:38:22 来自手机 | 只看该作者
我估计等你判断完黄花菜都凉了
5#
 楼主| 发表于 2013-4-25 15:43:18 | 只看该作者
SKIDROW 发表于 2013-4-25 15:38
我估计等你判断完黄花菜都凉了

我重新修改了一下问题,请赐教
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-9-28 03:06 , Processed in 0.212020 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表