A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hmyuanqi 中级黑马   /  2014-8-31 18:06  /  1011 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class  RegTest
{
public static void main(String[] args)
{
  //checkMail();
  splitDemo("erkktyqqquizzzzzo","(.)\\1+");//按照叠词完成切割。??
}
public static void checkMail()
  {
  String mail = "abc12@sina.com";
  String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+([url=file://\\.[a-zA-Z]+)+]\\.[a-zA-Z]+)+";    //[/url]  ??
  System.out.println(mail.matches(reg));
  }
public static void splitDemo(String str,String reg)
  {
  String[] arr = str.split(reg);
  for(String s : arr)
   {
   System.out.println(s);
   }
  }
}
在这段代码里面有两个地方我打了问号,我想问的是,不是说组的出现都有编号吗?就像(.)\\1+,那为什么在([url=file://\\.[a-zA-Z]\\.[a-zA-Z[/url]]+)+代码上,括号后面不是\\1+ 呢?不理解,而且我互换着运行了一下,得不到所要结果,谁能帮忙解释一下。

2 个回复

倒序浏览
不太理解你的问题:
试着说一下:
str=erkktyqqquizzzzzo
reg=(.)\\1+
1:String[] arr = str.split(reg);
split 方法以重叠词作为分隔界限  erkktyqqquizzzzzo
返回除了重叠词以为的字符,每一部分都存在数组中
2:你想做的是 邮箱的正则表达比对吧
回复 使用道具 举报
我是说我在后面两个打了问号的地方,组后面,也就是括号后面写的方式为什么不一样?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马