如何将此字符串AB23-01-0001
转换为AB23010001
(替换" - "使用"")和AB230001
(删除中间部分)在Java中使用正则表达式,右行我使用replace
作为第一个案例和substring
并将它们附加到第二个案例的SB中。只是想知道如何使用REGEX实现它。
答案 0 :(得分:0)
试试这个:
Pattern p1 = Pattern.compile("-[^-]*-");
Matcher m1 = p1.matcher("AB23-01-0001");
System.out.println(m1.replaceAll(""));
替换模式是Pattern.compile("-[\\d\\w]+-")
答案 1 :(得分:0)
为什么不使用String类中内置的方法?
String newString = "AB23-01-0001".replaceAll("[-]", "");
请注意使用[]
- 正则表达式字符串,因为您只是替换-
,您可以省略它们。
答案 2 :(得分:0)
str = "AB23-01-0001"
happy = str.replaceAll("[^a-zA-Z0-9]", "");
答案 3 :(得分:-1)
您可以使用内置方法使用RegEx一次删除这两个部分:
String value = "AB23-01-0001";
value = value.replaceAll("-[\\d\\w]+-", "");