我想替换"< p>"标记为"< p class =" myclass">"以下html中的类与Search&在Notepad ++中替换(使用正则表达式)函数
<p><?php echo $element_arr["a1_discount"]; ?></p>
<p><?php echo $element_arr["b2_discount"]; ?></p>
<p><?php echo $element_arr["c5_discount"]; ?></p>
我能够将上述内容与以下注册表匹配:
RegEx: (<p><\?php echo \$element_arr\["[A-Za-z][1-99]_discount"\]; \?>)
我尝试了以下替换reg-ex但它无法正常工作:
(<p class="myclass"><\?php echo \$element_arr\["[A-Za-z][1-99]_discount"\]; \?>)
它出现为:<p class="cool"><?php echo $element_arr["[A-Za-z][1-99]_discount"]; ?></p>
有人可以帮我解决这个问题。这将是一个巨大的节省时间,因为我有很多编辑这样的性质。
非常感谢
DKJ
答案 0 :(得分:0)
你甚至不需要正则表达式。只需搜索
<p>
并将其替换为<p class="myclass">
答案 1 :(得分:0)
如果您有其他具有各种属性的p
标记,则可以使用以下方法:
(<p[^<>]*\bclass=")[^"]*("[^<>]*>)
正则表达式替换为$1myclass$2
(Regular Expression
选项ON)。 这适用于像
这样的字符串<p class="someclass">text</p>
<p id="new" class="someclass">text</p>
<p id="new" class="someclass" end="true">text</p></code>
<p\b(?![^<>]*\bclass=)([^<>]*)>
替换为<p$1 class="myclass">
,用于没有属性或没有class
属性的段落标记。 这适用于像
这样的字符串<p>text</p>
<p id="new">text</p>
如果您决定使用任何具有常规编程语言的HTML解析器,则可以轻松删除此复杂性。
答案 2 :(得分:0)
怎么样:
找到:<p>(?=<\?php echo \$element_arr\["[A-Za-z][1-9][0-9]*_discount"\]; \?>)
替换为:<p class="myclass">
(?=...)
是一个积极的预测,确保您在<?php echo ...
<p>