1-FN3Z1-206329557431
1-FN411-153115736976
当我试图删除值的前两个部分列一个2列TSV文件(即提取206329557431
和153115736976
)。我用正则表达式的在线工具来生成模式
模式
".*?\\d+.*?\\d+.*?(\\d+)"
和".*?\\d+.*?\\d+.*?\\d+.*?(\\d+)"
独立,他们工作得很好。我试图寻找一个组合的正则表达式模式。任何指示如何做到这一点。
1-FN3Z1-206329557431
1-FN411-153115736976
当我试图删除值的前两个部分列一个2列TSV文件(即提取206329557431
和153115736976
)。我用正则表达式的在线工具来生成模式
模式
".*?\\d+.*?\\d+.*?(\\d+)"
和".*?\\d+.*?\\d+.*?\\d+.*?(\\d+)"
独立,他们工作得很好。我试图寻找一个组合的正则表达式模式。任何指示如何做到这一点。
为什么不例如使用split
:
String spl = "1-FN411-153115736976".split("-")[2];
如果你想要一个正则表达式,你可以使用(.*?-){2}(.*)
,这意味着得到第二个后的所有东西-
输出
206329557431
153115736976
你只是想第二个连字符后的一切吗?你只是想跳过前8个字符?什么准确定义你想要捕捉的部分? – khelwood
'String str =“1-FN3Z1-206329557431”; str.substring(str.lastIndexOf(“ - ”));' – john