我有一串看起来像这样的数字
["100000100685716-2","603834770-2", "604544970-3"]
有人可以帮助我使用正则表达式来匹配每个长(#34之前的第一个数字; - ")所以我可以将它添加到数组中吗?
答案 0 :(得分:2)
以下正则表达式应该有效:(\d+)-
答案 1 :(得分:1)
这里不需要正则表达式:
int pos = str.indexOf('-')
获取短划线的位置str.substring(0, pos)
获取字符串的初始部分。如果输入字符串中的破折号是可选的,则需要添加pos
的检查为非负数。
答案 2 :(得分:0)
(?:\"\d+)
这应该完全符合您的要求
答案 3 :(得分:0)
String s = "[\"100000100685716-2\",\"603834770-2\", \"604544970-3\"]";
System.out.println(s.split("-")[0].substring(2));