ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

三十、正则

2021-06-26 08:31:38  阅读:216  来源: 互联网

标签:量词 匹配 数字 matches 正则 num 惰性 三十


1、java方法

public boolean matches(String regex) :如果匹配正则表达式就返回true,否则返回false

2、逻辑运算符

&&:并且

"zad".matches("[a-z&&[^aeiou]]ad");

|:或

"zad".matches("[a|e|i|o|u]ad");

2、正则直接量

直接量表达式:/pattern/modifider

pattern 字符串模板
	\d		数字
	\d+		得到第一个或多个数字
	\d\d\d	获取连续3个数字
modifider 修饰符
	i		忽略大小写
	g		全局匹配,默认只匹配一次
	m		多行匹配
	.		匹配所有字符,除了\n\r\t
	
	修饰符 可以组合使用,如:/ig

3、pattern

【基本】
	1、/a/ 基本
【或】
	2、/a|b/ 或
【[]范围词  里面以或者并存】
	3、/[abc]/ 匹配中括号中任意一个字节,或
	4、/[a-z]/,/[A-Z]/ 可以匹配a~z任意字母
	5、/[0-9]/
	6、/[0-9a-zA-Z]/
  非
	7、/[^abc]/ 匹配非a非b非c
  匹配中文
	8、/[\u4e00-\u9fa5]/

	注意:特殊符号在范围括号中不具备意义

【() 整体】

4、元字符(转义字符、预定义字符)

/\w/ 匹配单词字母, _ ,数字; [a-zA-Z_0-9]
/\W/ 非\w的就匹配      
/\d/ 匹配数字 [0-9]
/\D/ 匹配非数字 [^0-9]
/\s/ 匹配空格
/\S/ 匹配非空格
/\b/ 单词边界。除字母, _ ,数字之外都不是单词边界
        you  you啊   youhh(false)
/\B/  非单词边界

【特殊】
/./   除换行其他都匹配
/\./  只匹配'.';
/\\/  只匹配\
/\//  只匹配/
        
\n  匹配换行

验证匹配3为数字

"233".matches("\\d{3}");

验证手机号

"13856478569"matches("1[358]\\d{9}");

5、量词

量词:
	\d{n}  匹配连续n个数字
	{n,m}  最少n,最多m
	{n,}   最小n次,最大无穷

	特殊
	{1,}   类似+  匹配1个或者无穷
	{0,1}  类似?  匹配0个或者1个
	{0,}   类似*   匹配0个或者无穷

	n?m		匹配m前0次或者一次n    ? = {0,1}
	n*m  	匹配m前任意次数n		* = {0,}
	n+m  	m前至少出现一次n   	+ = {1,}
	n{num,num}m  	m前 最少几个到 最多几个n
	n{num,num}


贪婪,惰性   在量词后加?就是惰性
	贪婪:尽可能多的匹配   默认贪婪
	惰性:尽可能少的匹配 量词后面加?


/\d??/ 第一个问号是量词问号,匹配零次或一次。第二问号是惰性匹配,尽可能少的匹配 

6、分组

将要重复使用的正则用小括号括起来,当一个小组看待

激活码

"ADFAS-ADG56-AG5GG-AGDF5-AG56G".matches("([A-Z0-9]{5}-){4}[A-Z0-9]{5}")

标签:量词,匹配,数字,matches,正则,num,惰性,三十
来源: https://www.cnblogs.com/6ovo6/p/14933321.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有