正则表达式转换此字符串

时间:2016-01-07 03:45:07

标签: java regex string

如何将此字符串AB23-01-0001转换为AB23010001(替换" - "使用"")和AB230001(删除中间部分)在Java中使用正则表达式,右行我使用replace作为第一个案例和substring并将它们附加到第二个案例的SB中。只是想知道如何使用REGEX实现它。

4 个答案:

答案 0 :(得分:0)

试试这个:

Pattern p1 = Pattern.compile("-[^-]*-");
Matcher m1 = p1.matcher("AB23-01-0001");
System.out.println(m1.replaceAll(""));

test it

替换模式是Pattern.compile("-[\\d\\w]+-")

答案 1 :(得分:0)

为什么不使用String类中内置的方法?

String newString = "AB23-01-0001".replaceAll("[-]", "");

请注意使用[] - 正则表达式字符串,因为您只是替换-,您可以省略它们。

答案 2 :(得分:0)

答案 3 :(得分:-1)

您可以使用内置方法使用RegEx一次删除这两个部分:

String value = "AB23-01-0001";
value = value.replaceAll("-[\\d\\w]+-", "");