如何从String中替换不同的文本

时间:2013-01-10 06:23:44

标签: java regex replace

我将这个HTML部分以字符串形式呈现给我。

<h1 id="Table1">Hello And welcome</h1>
<h1 id="Table2">Hello And welcome</h1>
<h1 id="Table3">Hello And welcome</h1>
<h1 id="Table4">Hello And welcome</h1>

我正在尝试从上面的字符串中删除id="*"属性。这样最终的String应该只包含这个:

<h1>Hello And welcome</h1>
<h1>Hello And welcome</h1>
<h1>Hello And welcome</h1>
<h1>Hello And welcome</h1>

我正在使用replaceAll()方法,但无法构建正则表达式。请指教。

2 个答案:

答案 0 :(得分:2)

String result = subject.replaceAll("<h1 id=\"[^\"]*\">", "<h1>");

应该适用于这种简单的场景。

答案 1 :(得分:1)

    String s = 
                    "<h1 id=\"Table1\">Hello And welcome</h1>"+
                    "<h1 id=\"Table2\">Hello And welcome</h1>"+
                    "<h1 id=\"Table3\">Hello And welcome</h1>"+
                    "<h1 id=\"Table4\">Hello And welcome</h1>";
    System.out.println(s.replaceAll("\\sid=\".*?\"", ""));

输出

<h1>Hello And welcome</h1><h1>Hello And welcome</h1><h1>Hello And welcome</h1><h1>Hello And welcome</h1>