我想将下面字符串中的&sp;
替换为Z
。
输入文字:ABCD&sp;EF&p;GHIJ&bsp;KL
输出文本:ABCDZEFZGHIZKL
有人可以告诉我如何使用Java正则表达式替换&\D+;
的每个实例吗?
我正在使用/(&& D +;)?/,但不起作用。
答案 0 :(得分:2)
您还应该使用?
修饰符来+:
String str = "ABCD&sp;EF&p;GHIJ&bsp;KL";
String regex = "&\\D+?;";
System.out.println (str.replaceAll(regex,"Z"));
这应该有效
答案 1 :(得分:0)
先匹配开头的&
,然后匹配所有不是尾部;
的字符,然后匹配尾部;
,如下所示:&[^;]+;
如果不匹配数字(如您必须使用带有\D
的示例,将数字添加到否定字符集中:[^;0-9]
要使其替换 all 出现,请添加全局标志g
。网站regexr.com是创建正则表达式的便捷工具。
编辑:对不起,我最初读错了您的问题。