Java正则表达式

11 篇文章 0 订阅

       一直都没有认真的学习Java正则表达式,现在好好的学习学习一下,把各个字符表示的意思总结一下。

       所谓的正则表达式就是处理字符串的特殊字符串,用来字符串的匹配,字符串的查找,字符串的替换。


       普通字符:字母,数字,汉字,下划线。

      \r, \n, \t, \f  表示回车符,换行符,制表符,换页符

      .         表示任意的一个字符

      X?     表示可以出现0次或者一次

      X+    表示可以出现1次或者多次

      X*    表示可以出现任意次

      X{n}表示可以出现n次

      X{m,n}表示可以最少出现次,最多出现n次

      X{n,}   表示最少出现n次

      [   ] 匹配括号中任意一个字符

      [^ ] 匹配括号中字符以外的任意一个字符

      \d  表示0-9之间的任意一个数字字符,即[0-9]

      \D 表示0-9之外的任意数字字符,即[^0-9]

        \s 表示空格,字符表,换页符等空白字符任意一个

      \S 表示除空白以外的任意一个字符,[^\s]

      \w表示字母,数字,下划线中任意一个字符,即[a-zA-Z_0-9]

      \W 表示字母,数字,下划线以外的任意一个字符,即[^a-zA-Z_0-9]

      ^ 表示不匹配任何字符,字符串开始的位置,即^h必须h开头

      $表示不匹配任何字符,字符串结束的位置,即r$必须以r结尾

      \b该符号不匹配任何字符,表示单词的边界

      \B该符号不匹配任何 字符,表示非单词的边界,即[^\b]

      | 用来连接两个子表达式,表示或的关系,X|Y 表示X或者Y中任意字符

      ()作为一个单元一个分组


       Pattern pattern1 = Pattern.compile("Task Endpoint:\\s+(\\S+)");
       Matcher m1 = pattern1.matcher(line);    //Task Endpoint:tmr2slc.vip.ebay.com (ManagedNode)   

       tmr = m1.group(1);   // tmr2slc.vip.ebay.com



       Pattern pattern2 = Pattern.compile("^\\s*(\\S+)\\s+\\S+\\s+(\\S+).*connected");
       Matcher m2 = pattern2.matcher(line);     // slc5b03c-6whp.stratus.slc.ebay.com slctivgw30.slc.ebay.com linux-ix86 41146   446034  connected 

      String server = m2.group(1);  // slc5b03c-6whp.stratus.slc.ebay.com 
      String type = m2.group(2);   // linux-ix86

       //其中group(0)就表示的是整个匹配的字符串


      手机号码匹配: "^((13[0-9])|(15[0-3,5-9])|(18[0,5-9]))\\d{8}$"

      email匹配:"^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$"

      验证身份证:"(^\\d{17}[a-zA-Z0-9]$)|(^\\d{14}[a-zA-Z0-9]$)"

      url验证:  "^http://[\\w\\.\\-]+(?:/|(?:/[\\w\\.\\-]+)*)?$"         (?:/|(?:/[\\w\\.\\-]+)*)? 这个表示路径可以为空、/结尾

   ip验证:"(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)" 总是感觉怪怪的。

      

      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值