gpt4 book ai didi

java - 正则表达式提取文本

转载 作者:行者123 更新时间:2023-12-01 23:14:24 25 4
gpt4 key购买 nike

我有这样的文字:

 SrcAddr: 0.0.21.201
DstAddr: 7.202.10.100
NextHop: 0.33.189.142
InputIf: 19
OutputIf: 50715

我想使用正则表达式提取这样的数据

    String SrcAddr = "0.0.21.201";
String DstAddr = "7.202.10.100";
//ect...

我尝试过各种表达方式,但仍然没有成功。如果有人能帮忙,感激不尽

最佳答案

你可以使用这样的东西:

String input = "SrcAddr: 0.0.21.201\n"+
"DstAddr: 7.202.10.100\n"+
"NextHop: 0.33.189.142\n"+
"InputIf: 19\n"+
"OutputIf: 50715";

String SrcAddr=getMatchedString("SrcAddr",input);
String NextHop=getMatchedString("NextHop",input);
String InputIf=getMatchedString("InputIf",input);
String OutputIf=getMatchedString("OutputIf",input);

System.out.println(SrcAddr);
System.out.println(NextHop);
System.out.println(InputIf);
System.out.println(OutputIf);

..........

public static String getMatchedString(String word,String input){

String REGEX = "(?:"+word+":)\\s(.*)";
Pattern p = Pattern.compile(REGEX);
Matcher m = p.matcher(input);
if (m.find()) {
String matched = m.group(1);
return matched;
}
return null;

}

输出

0.0.21.201
0.33.189.142
19
50715

<强> REGEX DEMO

关于java - 正则表达式提取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21456687/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com