Java 在现有标记正则表达式之外添加标记
我有一个单独的xml,我想在名为Java 在现有标记正则表达式之外添加标记,java,xml,regex,Java,Xml,Regex,我有一个单独的xml,我想在名为scl 比如说 <documents> <rnl></rnl> <snl></snl> <scl>This is scl</scl> </documents> 这是scl 因此这是scl将被转换为这是scl 我如何修改以下内容以实现此目的?到目前为止我已经试过了 String content5 = "<scl>this is scl</scl&g
scl
比如说
<documents>
<rnl></rnl>
<snl></snl>
<scl>This is scl</scl>
</documents>
这是scl
因此这是scl将被转换为这是scl
我如何修改以下内容以实现此目的?到目前为止我已经试过了
String content5 = "<scl>this is scl</scl>";
System.out.println(content5.replaceAll("^(?:<scl>)(?:.*?)(?:</scl>)", "<credit>$1</credit>" ));
String content5=“这是scl”;
System.out.println(content5.replaceAll(“^(?:scl)(?:.*?(:scl)”,“$1”);
一种方法是这样做:
String content5 = "<scl>this is scl</scl>";
System.out.println(content5.replace("<scl>", "<credit><scl>").replace("</scl>", "</scl></credit>"));
String content5=“这是scl”;
System.out.println(content5.replace(“,”).replace(“,”);
试试这个
StringBuilder sb = new StringBuilder(content5);
sb.insert(sb.indexOf("<scl>"), "<credit>");
sb.insert(sb.indexOf("</scl>") + "</scl>".length(), "</credit>");
String result = sb.toString();
StringBuilder sb=新的StringBuilder(content5);
sb.插入(sb.indexOf(“”,“”);
sb.插入(sb.indexOf(“”+“”.length(),“”);
字符串结果=sb.toString();
给你:
String content5 =
"<scl>this is scl</scl>\n" +
"<blah>this isn't</blah>\n" +
"<scl>this is scl</scl>\n" +
"<blah>this isn't</blah>\n";
System.out.println(content5.replaceAll("(?:<scl>)(?:.*?)(?:</scl>)", "<credit>$0</credit>" ));
字符串内容5=
“这是scl\n”+
“这不是\n”+
“这是scl\n”+
“这不是\n”;
System.out.println(content5.replaceAll((?:)(?:.*)(?:),“$0”);
输出:
<credit><scl>this is scl</scl></credit>
<blah>this isn't</blah>
<credit><scl>this is scl</scl></credit>
<blah>this isn't</blah>
这里是scl
这不是
这是scl
这不是
您可以完全改变思考问题的方式,并使用适当的库处理XML。非常容易学习,非常简单和直接使用。您需要的一切都在这个链接中解释。您不能在您的案例中使用xml解析器吗?@zvzdhk这将是完成此任务的明智方法。为什么不使用xml解析器..我不能。我必须使用外部APIT,它不适用于其他类型:String content5=“这是scl”