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

正则表达式入门

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

正则表达式入门

正则表达式入门
  • 前言
  • 一、正则表达式
    • 1、作用
    • 2、特点
    • 3、Java中正则表达式
    • 4、语法规则
  • 二、在线Regex
  • 总结
  • 参考文献

前言

正则表达式,又称规则表达式。(英语:Regular expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

一、正则表达式 1、作用

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

2、特点

灵活性、逻辑性、功能强
用极简的表达方式控制复杂的字符串。

3、Java中正则表达式
	Pattern p = Pattern.compile("[a-z]");
    System.out.println(p.matcher("a"));
	String regex = "[a]";
    System.out.println("a".matches(regex));
4、语法规则

[内容限定]{长度限定}

1)范围字符限定
[a-z0-9],表 示内容可以是a到z的任意字母,0到9的任意数字。

2)取反限定
[^abc]表示内容不能是a或b或c

3)长度限定
{}来限定长度,分固定长度限定和范围长度确定。
固定长度:[a-z0-9]{5},表示长度必须是5
范围限定:[a-z]{2,8},表示长度在[2,8]区间;[a-z]{2,},表示长度在[2,+∞]

4)长度限定符号
? 等同 {0,1},零次或一次,[a-z]?
+ 等同 {1,},一次或多次,[a-z]+
* 等同{0,},零次或多次,[a-z]*
注:String类中的split方法传入的是regex,而在regex中,?、+、*都是特殊字符,所以要用特殊字符去拆分时,需转义,如String[] strs = "a".split("\+");

5)预定义字符
通过预定义字符来简化内容限定的定义。

String regex = "\d?";

6)组合限定
通过组合限定来定义更复杂的限定内容。
示例1:
必须以字母开头,最小不能低于6位,最大不能低于8位(密码要求)。
“[a-z]{1}\w{5,8}”
示例2:
校验带有区号的电话号码
“\d{3,4}-{7,8}”,前面是区号,后面是电话号码。

7)常见正则表达式

注:更多简化内容,可以查JDK API 的pattern

二、在线Regex

[1] 在线Regex之一.
[2] 面向百度

总结

1)正则表达式
2)在线正则匹配

参考文献

[1] Java SE oldLu

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

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

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