1

我有一个这样的字符串:

_id:2 thread_id:189 address:0292 m_size:null person:0 date:1372494272447 date_sent:0 protocol:0 read:1 status:-1 type:1 reply_path_present:0 subject:null body:Ok。回复消息。 服务中心:051108 锁定:0 sim_id:0 错误代码:0 看到:1 _id:1 线程 ID:189地址:292 m_size:空人员:0 日期:1372493695831 日期发送:0 协议:空读取:1 状态:-1 类型:2 回复路径:空主题:空正文:测试消息服务中心:空锁定:0 sim_id:0错误代码:0看到:0

我只想从整个字符串中检索该字符串的一部分,例如地址:0292正文:xyz 。我想要一个非常大的字符串中这两个的所有实例(上面只是一个示例)。让我们假设它有超过 20000 个字符。

我怎样才能做到这一点?

4

2 回答 2

0

看起来 everyaddress后面跟着m_size,所以使用string.split()函数来拆分关键字,address然后选择string.substring()(从结果数组中的每个字符串中)直到到达关键字m_sizebody并为关键字和重复整个过程service_center。我想不出别的办法。

于 2013-06-29T08:59:32.280 回答
0

你是对的,它看起来并不漂亮。但它有效:)

String[] splitString = string.split(" ");
for (int i = 0; i < splitString.length; i++) {
if (splitString[i].startsWith("body") || splitString[i].startsWith("address"))
    Log.i(TAG, "Found: " + splitString[i]);
    // Do whatever you need to do
}
于 2013-06-29T09:50:38.497 回答