1

我正在拆分这个字符串

String xml_getMembermob = "Art C. Cauyao<$@PERX@$>501912568<$@ENDPERX@$>Tessa Rose Brainard<$@PERX@$>510831686<$@ENDPERX@$>"

我发现我不能在一个简单的问题上拆分这种字符串,所以我创建了这段代码

String re1=".*?"; 
String re2="(<\\$@ENDPERX@\\$>)";
Pattern p = Pattern.compile(re1+re2,Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
StringBuffer sb = new StringBuffer();
Matcher m = p.matcher(xml_getMembermob);
if (m.find())
{
   String tag1=m.group(1);
   Log.i("returned string get", ""+tag1); 
   String replacement = "$1 try $2";
   m.appendReplacement(sb, replacement);
   String asa = sb.toString();
   Log.i("buffered string" + "",asa);
    //m.appendReplacement(myStringBuffer,"wew");
}

现在在我在这部分出现错误之前

m.appendReplacement(sb, replacement);

我有日志说

09-10 10:53:44.878: I/returned string get(1198): <$@ENDPERX@$>

所以我可以得出结论,上面的代码是有效的。

你能帮我拆分这个字符串或更改它的一些单词以便我可以轻松拆分它吗?

4

1 回答 1

0

要在文本中查找模式并替换它,请使用以下命令:

Pattern p = Pattern.compile("find and replace me!");
Matcher m = p.matcher("a very long string that contains zero or more find and replace me! pattern inside");
StringBuffer sb = new StringBuffer();
boolean result = m.find();
while(result) {
    m.appendReplacement(sb, "I found you!");
    result = m.find();
}
m.appendTail(sb);
String strWithLink = sb.toString();

此代码将在您的字符串中搜索并替换所有“查找并替换我!” 用“我找到你了!”。

于 2012-09-10T04:52:19.020 回答