java的正则表达

2021-05-28 18:05

阅读:595

标签:进制   特殊字符   def   spec   地址   abc   type   mat   pre   

正则表达式(Regular Expression):

正则表达式中的特殊字符
特殊字符 说明
$ 匹配一行的结尾。要匹配 $ 字符本身,请使用\$
^ 匹配一行的开头。要匹配 ^ 字符本身,请使用\^
() 标记子表达式的开始和结束位置。要匹配这些字符,请使用\(\)
[] 用于确定中括号表达式的开始和结束位置。要匹配这些字符,请使用\[\]
{} 用于标记前面子表达式的出现频度。要匹配这些字符,请使用\{\}
* 指定前面子表达式可以出现零次或多次。要匹配 * 字符本身,请使用\*
+ 指定前面子表达式可以出现一次或多次。要匹配 + 字符本身,请使用\+
? 指定前面子表达式可以出现零次或一次。要匹配 ?字符本身,请使用\?
. 匹配除换行符\n之外的任何单字符。要匹配.字符本身,请使用\.
\ 用于转义下一个字符,或指定八进制、十六进制字符。如果需匹配\字符,请用\\
| 指定两项之间任选一项。如果要匹配字符本身,请使用\|

[]方括号表达式:

  [abc]表示 a、b、c 其中任意一个字符;

  [a-h]表示a-h中的任意一个字符;

  [^a]表示非a的字符

  [a-z&&[def]]是 a~z 和 [def] 的交集,表示 d、e

  [a-d][m-p]表示 [a-dm-p]

X{m,n}  表示X表达式最少出现 n 次,最多出现 m 次

 

例如:Matcher m = Pattern.compile("((13\\d)|(15\\d))\\d{8}").matcher(str);    //匹配13或15开头的11位数字(用正则表达式编译后的去匹配str字符串)

  String regex = "0\\d{2,3}[-]?\\d{7,8}|0\\d{2,3}\\s?\\d{7,8}|13[0-9]\\d{8}|15[1089]\\d{8}";   

  \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}        //IP地址的匹配 

java的正则表达

标签:进制   特殊字符   def   spec   地址   abc   type   mat   pre   

原文地址:https://www.cnblogs.com/XLS123/p/14772609.html


评论


亲,登录后才可以留言!