栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA小白学习笔记 正则表达式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA小白学习笔记 正则表达式

正则表达式:用来判断用户输入的内容是否符合格式的要求,严格区分大小写。

String str = ""

[]允许出现的内容,可以简写,但必须连续,[0123456789]→[0-9],[a-z]
{}允许出现的长度,不写默认为1
例1:①[0-9]{4}     0000-9999之间的数 允许出现4位,并且每位内容为0-9中的一位
   ②[0123456789]{4} 与①式等价
例2:[abc][123] 
表示两位,
第一位在a,b,c中取任意一个,
第二位取1,2,3中的任意一个,
可能为a1,a2,a3,b1,b2,b3,c1,c2,c3

正则表达式 中 符号 的实意

^ 取反, 例[0-9]取一位0-9的字符,[^0-9]取一位不在0-9中的字符
? 出现0-1次, [123]? 只能出现1或2或3或空白
* 出现0或多次, [abc]* 可以是由a,b,c字符组成的任意长度的串,a,b,c,ab,ac,acabcba等等,包含空白
+ 出现的次数>=1, [abc]+ 和*的用法一样,但不包含空串
. 匹配 单个 任意字符

s 只含空白
d 数字与[0-9]等价
w 字母数字下划线[0-9a-zA-Z]
大写即取反
S 不含空白
D 不含数字与[^0-9]与等价
W 不含字母数字下划线,可以为!@#$%^&这些

实际使用时需要注意
JAVA中''为转义字符,故使用如下的格式
String str="\w";
String str="\s";

例:手机号,首位必为1,第二位不为0,1,2,剩余9位可为0-9的数
String phone = "[1][3-9][0-9]{10}"

例:身份证号,18位,前17位为数字,最后一位可为X
String ID = "[0-9]{17}[0-9X]"

例:验证码,包含字母数字,长度为4
String code = "[0-9a-zA-Z]{4}"

代码验证:

public class TestRegex {
	public static void main(String[] args) {
		String str = "[1][3-9][0-9]{9}";
		String input;
		do {
			System.out.println("请输入");
			input = new Scanner(System.in).nextLine();
			if(input.matches(str)) {
				System.out.println("满足");
				return;
			}
		}while(!input.matches(str));
	}
}


 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/314347.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号