java正则表达式(基础介绍及简单应用)

正则表达式:

    1、正则表达式就是用来晓燕某些字符串是否符合规则的,是一串特殊的字符串。特殊在其字符都是通配符,有匹配功效

    2、[ ] :检查是否有括号内的字符(只能有一个括号内的字符)。

                [abc] :只要有a,b,c,中的一个就行

                [^abc] :除了a,b,c,之外的任意一个字符

                [a-z] / [A-Z] : a~z / A-Z中的任意一个字符

                [a-zA-Z0-9] : a~z,A~Z,0~9中的任意一个字符

                [a-z&&[^dbc]] : a~z中除了b,c,d中的任意一个字符

        预定义字符集:

         . :任意一个字符

       \d :任意一个数字字符,相当于[0-9]

       \w :任意一个单词字符,相当于[a~zA~Z0~9]

        \s :空白字符(回车,空格,tab等),相当于[\t\n\f\r\x0B]

       \D :非数字字符,相当于[^0~9]

      \W :非单词字符,相当于[^a~zA~Z0~9]

       \S :非空白字符,相当于[^\t\n\f\r\x0B]      

    3、 转移字符: \
如果只写\d会判断成转译字符(无效的转译字符),要写成\\d,将"\"转译成普通的"\"
用x表示上面的正则表达式
X?   表示正则表达式中的字符出现0个到1个
X*   表示0个或多个
X+   表示1个或多个
X{n} 表示n个X
X{n,}表示n个到任意多个
X{m,n}表示m个到n个 
        列:邮政编码:
    1、[0-9][0-9][0-9][0-9][0-9][0-9]
    2、\d\d\d\d\d\d
    3、\d{6}
        "^"&"$"

    ^\w{8,10}$   8到10个字符从头到尾都要匹配上

():分组
   ()将正则表达式的部分规则进行了划分,可以使用|来进
       行选择其中一组规则
   reg:手机号前带有区号
      +861375651674
      0086 1375651674
   正则表达式:
      (+86|0086)?\\s?1\\d{10} 
      
    判断一个字符串是不是一个网址
    http://www.baidu.com
    https://www.baidu.com
    www.baidu.com
    www.baidu.cn
    www.baidu.com.cn
    www.baidu.net
    www.baidu.edu
 ^和$
     有时,我们想校验一个字符串是不是从头到尾都符合一个规则校验
     此时需要在正则表达式前后添加相应的符号:
  ^:添加在正则表达式前,表示要校验的普通字符串的开头就
          必须符合规则
  $:添加在正则表达式后,表示要校验的普通字符串的末尾
          必须符合规则
          
  前后都有此符号时:考虑的普通字符串的整体
          
  reg:
      "^[\\d]{6,8}"        
      
       "123456aaaaaaaaa"可以满足上述正则表达式
  
       "[\\d]{6,8}$"
       "abc12345678" 可以满足上述正则表达式
       
       "^[\\d]{6,8}$"
       "12345678"
       
   matchs(String regex):此方法验证不了我们自定义添加的^或$
      因此当把正则表达式传入方法内后,
      内部逻辑帮助添加了^和$ 
      
 总结:正则表达式 是一个灵活,逻辑性强的规则校验语法。
          通常用于文本中

 

 

        matches方法(boolean matches(String regex))
        作用:将一个字符串与正则表达式进行匹配,成功返回true,不匹配返回false
    4、String的API
            String[] split(String regex)
        作用:可以根据指定的分隔符进行分割成字符数组
        如果符合正则表达式的分隔符,在普通字符串的首位,会多出一个元素,在末尾则不会
            replacAll方法(String replaceAll(String regex,String replacement))
        作用:将匹配的正则表达式的字符串替换成指定的字符

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值