[英]How to use java String.replaceAll(string regex,string replacement) to get what I want?
Codes: 代码:
String etr = "fdsfsdaf\nTKT:1101234567890FSDFD";
the format is like ".+\\nTKT:\\d{13}.+". 格式类似于“。+ \\ nTKT:\\ d {13}。+”。
how to get first 3 numberic after "\\nTKT:" using String.replaceAll to implement? 如何使用String.replaceAll实现“ \\ nTKT:”之后的前3个数字? In this example, I want to get is "110".
在这个例子中,我想得到的是“ 110”。 Exclude Matcher,Pattern and Other String method like indexOf().
排除Matcher,Pattern和其他String方法(如indexOf())。 Because I found the Regex include "?:","?<",but I have tried but failed,something like":
因为我发现正则表达式包含“?:”,“?<”,但是我尝试了但失败了,例如“
replaceAll(".+\nTKT:(?=[\\d{3}])\\d{10}.+","");
Thanks in advance.I just know some basic use for Regex. 预先感谢。我只知道Regex的一些基本用法。
或者,您也可以replaceAll(".+\\nTKT:(\\\\d{3})\\\\d{10}.+", "$1");
Instead of replacing,you should match it 而不是替换,您应该匹配它
Matcher m=Pattern.compile(".+\nTKT:(\\d{3})\\d{10}.+").matcher(input);
if(m.find())
{
m.group(1);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.