正则表达式 - 在Dreamweaver中查找和替换
我有超过一千个网页我需要在某个字段内抓取html数据,然后不替换该数据,但我需要将该数据复制到上面的meta字段中,文件。正则表达式 - 在Dreamweaver中查找和替换
我发现下面的代码有点使用完整。
发现:
<span class="CatStyle">(.*)</span>
更换如。
<span class="CatStyle">$1</span> <meta name="Category" content="$1">
但我将如何使用/我可以使用正则表达式来找到上面说,但随后而不是替换就像我在上面的例子中的数据,可以我替换/插入变量$ 1插入<meta name="Category" content="$1">
的头部内文档,而不是插入跨度下方。 ?
任何想法?
注意:要操纵HTML,您可以使用更好的工具 - HTML解析器 - 而不是使用正则表达式支持的S & R对话框。
对于一次性的工作,如果你需要使用模式的里面搜索和替换对话框和只有一个meta
与name
等于类别的span
之前,你可以使用标签
(<meta name="Category" content=")[^"]*(">[\s\S]*<span class="CatStyle">)([\s\S]*?)(</span>)
并用$1$3$2$3$4
代替反向引用序列。
详细:
-
(<meta name="Category" content=")
- 第1组捕获<meta name="Category" content="
串 -
[^"]*
- 比"
-
(">[\s\S]*<span class="CatStyle">)
其他0+字符 - 组2捕获">
,那么任何0+字符(如许多尽可能)直到最后<span class="CatStyle">
然后<span class="CatStyle">
本身 -
([\s\S]*?)
- 第3组捕获任何0+字符,尽可能少,直至第一... -
(</span>)
- 第4组捕获</span>
$n
的是反向引用,以与图案定义的基团配对(...)
的帮助。
另外,查看更多关于[*捕捉团体*](http://www.regular-expressions.info/brackets.html)和[* Backreferences *](http://www.regular-expressions.info/replacebackref。 html)在regular-expressions.info。 –
这听起来像你需要使用搜索和替换对话框中的模式,对吧?在所讨论的span范围之前,只有一个名称为Category的标签?尝试'( [\ s \ S] * )([\ s \ S] *?)( )'并换成'$ 1 $ 3 $ 2 $ 3 $ 4' –
Spot On!Worked Perfectly!:D Legend。:)你应该在下面重新发布这个答案,所以我可以把它作为正确的答案 –
另外,当涉及到常规表达我理解到A(。*)B在A和B之间找到值,并且用于替换目的为$ 1。你究竟做了什么/代码/函数在做什么?这很好,但我只是好奇它究竟是如何工作的。 –