我需要解析的内容:
[at:1761764]@my_nick_name[/at] my random comment.
我想得到什么:
@my_nick_name my random comment.
我需要在Android应用程序中执行此操作。任何建议都将不胜感激。
答案 0 :(得分:3)
final String a = "[at:1761764]@my_nick_name[/at] my random comment.";
System.out.println(a.replaceAll("\\[.*?\\]", ""));
这将用空字符串替换[]
(包括它们)之间的任何内容,这相当于将其从字符串中删除。
正则表达式的解释:
\\[
- > [字符(你需要逃避它,因为它是正则表达式中的特殊字符)
.*?
- > 0个或更多的任何角色,而不是贪心
\\]
- > ]角色
答案 1 :(得分:0)
这个正则表达式:
(^\[\w*:\d*\])|(\[/\w*\])
您选择:
[at:1761764]和[/ at]
稍后你可以删除它;)
答案 2 :(得分:0)
简单版本:
String[] parts = input.split("]");
String firstPart = parts[1];
firstPart = firstPart.substring(0, firstPart.indexOf("["));
String secondPart = parts[2];
正则表达式是一般KISS的另一个好选择。