使用正则表达式搜索和替换

时间:2013-02-02 14:15:00

标签: html regex text-editor

Iam尝试使用正则表达式进行搜索和替换,但它无效。

我有一些像这样的HTML:

<p><b>Noten</b></p>
<p><b>somethingelse</b></p>
<p><b>random extra</b></p>
<p><b>something 3</b></p>

并希望如此:

<h2>Noten</h2>
<h2>somethingelse</h2>
<h2>random extra</h2>
<h2>something 3</h2>

但它如何找到所有正确的元素? 我只能找到没有空格或数字的那些,如下:

<p><b>[a-z]*</b></p>

并且我不知道如何替换它以便<p><b>标签在<h2>

中发生变化

3 个答案:

答案 0 :(得分:3)

测试

var regex = /<p><b>([^>]+)<\/b><\/p>/ig;
var s="<p><b>Noten</b></p>";
var result = s.replace(regex, "<h2>$1<\/h2>");
alert(result);

但我建议你使用Dom和JQuery来做这个更容易

答案 1 :(得分:2)

试试这个

它在javascript中

s="<p><b>Noten</b></p>"
s.replace("<p><b>","<h2>")
s.replace("</p></b>","</h2>")

工作示例:

这是小提琴:http://jsfiddle.net/ZqqFv/2/

答案 2 :(得分:1)

很大程度上取决于您尝试使用正则表达式的位置,但我只需将其运行一次

<p><b>

/<p><b>/<h2>/

第二次

<\/b><\/p>

/<\/b><\/p>/<\/h2>/