gpt4 book ai didi

java : search for a word in a text and give its line

转载 作者:行者123 更新时间:2023-12-01 13:06:42 26 4
gpt4 key购买 nike

我有一个字符串输出(一个段落),有近 140 行,我想在该段落中搜索一个单词并获取其在该段落中的行例如我有:

date : 08/12/2009
value : 589.236
smth : smth
Fax : 25896217

我搜索“值”一词,它给出了段落中的第 2 行,实际上我使用这段代码来获取行数:

String resultat = "..."
Matcher m = Pattern.compile("(\n)|(\r)|(\r\n)").matcher(resultat);
int lines = 1;
while (m.find())
{
lines ++;
}

java中有没有预定义的方法可以给我找到的单词的行?

最佳答案

一种解决方案是通过按行结束字符拆分 String 值来获取行,并检查每一行是否出现搜索值,并返回找到事件的行号。一个可能的实现可能是:

private static int findPartInArray(String[] text, String needle) {
int lineNumber = 0;
for (String line : lines) {
if (line.contains(needle)) {
return lineNumber + 1;
}
lineNumber++;
}
return -1;
}

使用示例:

String input = "date : 08/12/2009" + "\n" + "value :  589.236" + "\n"
+ "smth : smth" + "\n" + "Fax : 25896217";
String[] lines = input.split("(\\n)|(\\r)|(\\r\\n)");
int res = findPartInArray(lines, "value");
if (res > 0)
System.out.println("not found");

关于java : search for a word in a text and give its line,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23214149/

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