gpt4 book ai didi

java - 需要提取java中多行中存在的特定字符串

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

public String ReplaceCline(String laddr) {
if(text.contains("c="))
{
int a = text.length();



for(int i=0;i<a;i++)
{
int var1 = text.indexOf("IP4", i);
var1 = var1+ 4;
int var2 = var1+15;

text = text.replace(text.substring(var1, var2),laddr );

i = var2;
}

}
return text;
}

它抛出索引越界错误。

必须替换设备发送的文本中的 IP 地址,该地址可在文本中的“c=”行中找到。

最佳答案

您可以使用正则表达式来替换文本。

Pattern regex = Pattern.compile("c=IN IP4 (?:\\d{1,3}\\.){3}\\d{1,3}");
Matcher matcher = regex.matcher(text);
if (matcher.find()) {
text = matcher.replaceAll(
"c=IN IP4 "+laddr);
}

编辑:这假设 IN 地址始终前面有 IP4,并且该地址确实是 IP4 地址。为了与 IP6 兼容,您需要增强正则表达式。

关于java - 需要提取java中多行中存在的特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18715110/

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