如何分割字符串A000101
如A000 and 101
, 000101 as 000 and 101
使用相同的正则表达式。
我尝试过类似的东西
"A000101".split("(?<=\\D)(?=\\d)|(?<=\\d)(?=\\D)&(?!=0)")
但输出是 A and 000101
编辑:
我可以得到 A0000
和0
来自A00000
使用相同的逻辑?
最佳答案
对我来说,使用 Matcher
而不是 split
似乎更容易:
String str = "A000101";
Pattern p = Pattern.compile("([^1-9]*)([1-9]\\d*)");
Matcher m = p.matcher(str);
if (m.matches()) {
String prec = m.group(1);
String post = m.group(2);
}
关于java - 如何使用正则表达式分割前面带有零的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32199247/