当前位置: 首页 > 图文教程 > 网络编程 > 正则表达式 > 一个替换目录结构的正则表达式 实现目录的增加

正则表达式
自定义ubb代码,preg_replace()函数的一些代码
eregi_replace()中特殊字符的处理方法
eregi_replace与preg_replace 函数代码的用法比较
JS正则表达式详解[收藏]
[正则表达式]贪婪模式与非贪婪模式
收集的ASP.NET中常用正则表达式
C#正则实现Ubb解析类的代码
利用正则快速找出两个字符串的不同字符
C#中的正则表达式 学习资料
正则表达式中对各字符集编码范围的总结
正则表达式基础教程与说明
正则表达式
asp下正则实现URL自动链接的一个函数
JS:一个匹配日期的正则
JS:正则将首字单词转成大写
正则表达式:过滤<font>和</font>
vbs:把一段文字中指定字符颜色变成红色的正则
js:校验IPv6地址的正则表达式
vbs:一段比较精简的代码实现取得字符串的"字节"数
vbs:能算出一个字符在一字段里共出现有几次的函数

一个替换目录结构的正则表达式 实现目录的增加


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 192 ::
收藏到网摘: n/a

这个功能挺重要大家习惯了用asp,php等在线的,用一些支持正则表达式的软件实现替换是更有效率的,容易测试等,读懂了这个就可以更方便的利用正则表达式为我们服务了。 需要解决如下操作:
有多个shtml文件,里面有连接地址
http://www.ruanchen.com/"http://www.ruanchen.com/" style="color: #000">正则表达式的软件就可以了
查找目标:
复制代码 代码如下:

^(.+/)(.+)$

替换为:
复制代码 代码如下:

\1inc/\2

记得在下面的"查找模式"上选中 "正则表达式"
再顺便讲一下上面的正则是什么意思,
^(.+/)(.+)$
^ 匹配每一行的开头
$ 匹配每一行的结尾
(.+/) 匹配 从当前行的开始到最后一个 / 括号在这里表示捕获这个分组,然后才可以在正面的替换为里面使用 \1 来代表这个正则所匹配的内容
(.+) 匹配当前行的最后一个 / 的右边的字符起到这一行的结尾 (第二个捕获分组 \2)
上面的整个正则的意思是 从当前行的第一个字符找到最后一个 / 做为第一个分组,剩余的做为第二个分组
替换为: \1inc/\2
中的 \1 就是上面所说的第一个分组所匹配到的内容 \2 是第二个分组所匹配到的内容 inc/ 是你想要在中间中上的字符
所以合在一起就可以达到你想要的目的了.
即:
http://www.ruanchen.com/2/234/678.html
http://www.ruanchen.com/2/234/ 为 分组一所匹配到的字符(\1)
678.html 为分组二所匹配到的字符(\2)
然后再结合替换为里面的内容,替换后的结果为
http://www.ruanchen.com/2/234/inc/678.html