Java 正则表达式

学习目标:

了解正则表达式的含义;

学会使用各类正则表达式;

学会利用正则表达式解决问题;

学习内容:

正则表达式是一个字符串,用来匹配一个字符串集合的模式。对于字符串处理来说,正则表达式是一个强大的工具。我们可以使用正则表达式来匹配、替换和拆分字符串。

匹配字符串:利用String类的matches方法;它功能强大,不仅可以匹配一个固定的字符串,还可以匹配符合一个模式的字符串集。

正则表达式语法:

注意:反斜杠是一个特殊的字符,在字符串中开始转义序列。因此Java中需要用 \\ 来表示 \ 。

注意:空白字符是' '、'\t'、'\n'、'\r',或者 '\f'。因此,\s和 [\t\n\r\f] 等同,\S和 [^ \t\n\r\f] 等同。

实例:

1.社会安全号

public class Regex {
	//社会安全号:xxx-xx-xxx
	public static void main(String[] args) {
		boolean bool1 = "111-22-3333".matches("[\\d]{3}-[\\d]{2}-[\\d]{4}");
		boolean bool2 = "11-22-3333".matches("[\\d]{3}-[\\d]{2}-[\\d]{4}");
		System.out.println(bool1);
		System.out.println(bool2);
	}

}

 2.偶数结尾

public class Regex {
	
	public static void main(String[] args) {
		boolean bool1 = "123".matches("[\\d]*[02468]");
		boolean bool2 = "122".matches("[\\d]*[02468]");
		System.out.println(bool1);
		System.out.println(bool2);
	}

}

替换和拆分字符串:

String类中还包含了replaceAllreplaceFirstsplit方法,用于替换和拆分字符串。

replaceAll方法替换所有匹配的字符串,replaceFirst替换第一个匹配的子字符串。

split(regex)方法使用匹配的分隔符将一个字符串拆分为子字符串。split(regex,limit)方法中,limit参数确定模式匹配多少次。如果limit<=0,split(regex,limit)等同于split(regex),如果limit>0, 模式最多匹配limit-1次.

注意:在默认情况下,所有的量词都是"贪婪"的. 会尽可能匹配最多次. 可以通过在后面添加 ? 来改变量词符的默认行为. 量词变为"不情愿" 或者"惰性".

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值