来源:自学PHP网 时间:2014-10-28 17:28 作者: 阅读:次
[导读] 这个功能挺重要大家习惯了用asp,php等在线的,用一些支持正则表达式的软件实现替换是更有效率的,容易测试等,读懂了这个就可以更方便的利用正则表达式为我们服务了。...
需要解决如下操作:
有多个shtml文件,里面有连接地址 http://www.jb51.net/fgdf/222/1234.shtml http://www.jb51.net/tyty/333/456456.shtml http://www.jb51.net/tyry/789/fsdfsfs.shtml 现在我我想把这些.shtml文件连接地址前面加个目录名 inc 就是变成 http://www.jb51.net/fgdf/222/inc/1234.shtml http://www.jb51.net/tyty/333/inc/456456.shtml 解决方法:一般来说editplus等支持正则表达式的软件就可以了 查找目标: 复制代码 代码如下: ^(.+/)(.+)$ 替换为: 复制代码 代码如下: \1inc/\2 记得在下面的"查找模式"上选中 "正则表达式" 再顺便讲一下上面的正则是什么意思, ^(.+/)(.+)$ ^ 匹配每一行的开头 $ 匹配每一行的结尾 (.+/) 匹配 从当前行的开始到最后一个 / 括号在这里表示捕获这个分组,然后才可以在正面的替换为里面使用 \1 来代表这个正则所匹配的内容 (.+) 匹配当前行的最后一个 / 的右边的字符起到这一行的结尾 (第二个捕获分组 \2) 上面的整个正则的意思是 从当前行的第一个字符找到最后一个 / 做为第一个分组,剩余的做为第二个分组 替换为: \1inc/\2 中的 \1 就是上面所说的第一个分组所匹配到的内容 \2 是第二个分组所匹配到的内容 inc/ 是你想要在中间中上的字符 所以合在一起就可以达到你想要的目的了. 即: http://www.jb51.net/12/234/678.html http://www.jb51.net/12/234/ 为 分组一所匹配到的字符(\1) 678.html 为分组二所匹配到的字符(\2) 然后再结合替换为里面的内容,替换后的结果为 http://www.jb51.net/12/234/inc/678.html |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com