我的文字
Agency ABC Agency CHS
Location Mumbai
我想从上面的文字中获取值“ABC Agency CHS”。 ABC Agency CHS是动态数据,可能会发生变化。同样,位置字段也可能会发生变化。
我正在使用substring来获取值
data.substring(data.indexOf("Agency") + ("Agency").length(), data.indexOf("Agency") + 25);
使用上面的代码,我得到了所需的值,但我知道这不是一个正确的解决方案。
是否有任何选项可以获取代理商行的换行符索引?
有人请建议更好的方法吗?感谢
答案 0 :(得分:1)
您可以使用data.substring(data.indexOf("Agency") + 6, data.indexOf("\n"));
编辑:由于您可以使用多个换行符,
data.substring(data.indexOf("Agency") + 6, data.indexOf("\n", data.indexOf("Agency")));
这将获得字符串,直到“Agency”
之后的第一个换行符答案 1 :(得分:1)
我会使用正则表达式。
的第一个捕获组(?:^Agency )([A-Z]* .* [A-Z]*)
匹配ABC Agency CHS
,允许ABC
和CHS
的长度具有灵活性。前导Agency
字符串只是被忽略(但匹配需要)。
答案 2 :(得分:0)
你可能想要这个
agency = data.substring(data.indexOf("Agency"), data.indexOf("Location"));
location=data.substring(data.indexOf("Location"), data.length);