第一个是[#1]
然后每个是
[#2]、[#3]、[#4]、[#5]、[#6]
怎么匹配这样的数字符串啊
[#]这些都是定了的,数字不定
让我想到了万恶的面试官。
比如说String str = "badfdsfdsafsadf[#1],sfdsafsdfasdf[#2],skdf;sakfdjaksfdj"
1.判断里面有多少个这样匹配的
2.能匹配的换成指定字符串内容
\[#(\d+)\]
1.groupCount 获取符合规则的总数
2.replaceAll("\[#\d+\]","you want");
"\[#[1-9]\]"
\[#(\d+)\] group获取即可
[code="java"]
public static void main(String[] args) {
String str = "badfdsfdsafsadf[#1],sfdsafsdfasdf[#2],skdf;sakfdjaksfdj" ;
Matcher matcher = Pattern.compile("\\[#(\\d+)\\]").matcher(str);
StringBuffer sb = new StringBuffer();
while(matcher.find()){
matcher.appendReplacement(sb, "ReplaceStr");
}
matcher.appendTail(sb);
System.out.println(sb.toString());
}
[/code]