hujian219
2009-11-02 21:02
浏览 185
已采纳

大家帮我看看 下面这个正则表达式的意思哈!

这是解析电话号码的正则
String i="67343333-103";
Pattern p=Pattern.compile("([0-9]{2,5})[-_ ]+([0-9]{5,8})[-_ ]+([0-9]{1,4})|(([0-9]{2,5})[-_ ]*)?([0-9]{5,})");
Matcher m= p.matcher(i);
i=m.replaceAll("[a href=\"phone:$1$2$3$5$6\"]$0[/a]");
System.out.println(i);

运行出来的结果是
[a href="phone:67343333"]67343333[/a]-103

请问一下 代码中的$1 $2 $3 $4$5$6 分别表示匹配哪个部分呀 如果我换成
i=m.replaceAll("[a href=\"phone:$1\"]$0[/a]");
打印出来的结果就是
[a href="phone:"]67343333[/a]-103

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题