替换正则表达式之间的所有字符

时间:2018-08-21 15:15:44

标签: java regex

我想用""(一个空字符串)替换整个字符串。

我有一个字符串,如下所示:

<code code="34068-7"  

但是,末尾的数字可以是任何数字(在此示例中为7), 因此,基本上,我想用<替换<和最终编号之间的所有内容,包括""和最终编号。由于数字可以是任何数字,我该如何使用正则表达式呢?

我已经尝试过了:

 line = line.replaceAll("<code.*?\">","");

有人可以建议实现这一目标的方法吗?

3 个答案:

答案 0 :(得分:2)

您可以使用以下模式:

line = line.replaceAll("<code code=\"[0-9-]+\"", "");

该模式仅适用于属性值中的数据,其余部分假定为静态。

答案 1 :(得分:0)

尝试一下:

line = line.replaceAll("(?<=\\<)code.*?\"", "");

此正则表达式正则表达式将确保字符串开头的<不会被“”代替,因此示例输出将为

<34068-7"

答案 2 :(得分:0)

除了ernest_k的答案外,您还可以用\ d替换正则表达式中的数字,以提高可读性。因此正则表达式为:

<code code=\"[\d-]+\"