用Java替换'和类似的标签

时间:2012-01-02 09:40:38

标签: java regex

我想删除类似于&的标签者;和& LT;

 pattern=Pattern.compile("'");
 match=pattern.matcher(line);
 match.replaceAll("");

但它不起作用。我也尝试过:

line=line.replace("&","");
line=line.replace("apos","");
line=line.replace(";","");

但这一次,它只取代了;分隔符而不是&和......

3 个答案:

答案 0 :(得分:2)

而不是使用来自Apache http://commons.apache.org/lang/api-2.5/org/apache/commons/lang/StringEscapeUtils.html的regexp tryout StringEscapeUtils非常方便用于许多类似目的

答案 1 :(得分:1)

您应该尝试按照正则表达式删除以下模式:<>' &

Pattern pattern = Pattern.compile("&(lt;|apos;|gt;|)");

<强>测试

Matcher m = pattern.matcher("abc &def &apos; xyz&lt; &gt; mno");
System.out.printf("line=[%s]\n", m.replaceAll(""));

<强>输出:

line=[abc def  xyz  mno]

答案 2 :(得分:1)

因为它不是有效的正则表达式。有效的正则表达式必须具有以下内容 -

一个'&amp;'在开始时签名,任何非数字的文字,以';'结尾标志。像(不完全是 -

/(&安培;)([A-Z] [A-Z])+(;)/

新年快乐。