我正在获取包含如下内容的文本文件。我想检索 start_word=Tax%
和 end_word="ErrorMessage"
之间存在的数据。
ParsedText:
Tax%
63 2 .90 0.00 D INTENS SH 80ML(48) 9.00% 9.00%
23 34013090 0.0 DS PURE WHIT 1 COG (24) 9.00% 9.00%
"ErrorMessage":"","ErrorDetails":""
检索后输出将是
63 2 .90 0.00 D INTENS SH 80ML(48) 9.00% 9.00%
23 34013090 0.0 DS PURE WHIT 1 COG (24) 9.00% 9.00%
请帮忙。
我正在使用 Camel 来读取文本,然后我想检索数据以根据我的要求进一步处理。
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
public class DataExtractor implements Processor{
@Override
public void process(Exchange exchange) throws Exception {
String textContent=(String) exchange.getIn().getBody();
System.out.println("TextContents >>>>>>"+textContent);
}
}
在文本内容中,我得到了上面给出的内容。我需要有关在 java 中检索数据的帮助。
最佳答案
下面是提取所需输出的代码片段:
String[] strArr = textContent.split("\\r?\\n");
StringBuilder stringBuilder = new StringBuilder();
boolean appendLines = false;
for(String strLines : strArr) {
if(strLines.contains("Tax%")) {
appendLines = true;
continue;
}
if(strLines.contains("\"ErrorMessage\"")) {
break;
}
if(appendLines){
stringBuilder.append(strLines);
stringBuilder.append(System.getProperty("line.separator"));
}
}
textContent = stringBuilder.toString();
关于java - 通过匹配起始词和结束词检索文本内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56558038/