首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >正则表达式规则

正则表达式规则

作者头像
卡尔曼和玻尔兹曼谁曼
发布2019-01-25 16:42:55
5210
发布2019-01-25 16:42:55
举报

正则表达式中的规则定义可分为如下几个方面:

字符结构定义

编辑匹配定义

逻辑运算定义

量词定义

字符结构

解释

.

任何字符

X

单个字符,包括控制符(\t,\n,\r,\\,\f)

Xxx

字符串

[abc]

包含a或b或c的任何单个字符

[^abc]

不包含a或b或c的任何单个字符

[a-zA-Z]

包含英文大小写字母中的任何单个字母

\s

空白符(空格、跳格、回车、换行、换页)

\S

非空白符

\d

数字(0~9)

\D

非数字

\w

文本字符,[a-zA-Z_0~9]中的任何一个字符

\W

非文本字符

注意:为了使Java编译器识别,在以“\”开始的字符串定义中必须再加上一个“\”,说明跟随的是正则表达式对字符的定义符。正则表达式必须用双括号括起来。

定义

解释

^B

必须以B开始。B为任何字符、字符串。

B$

必须以B结束。B为任何字符、字符串。

定义

解释

XY

X后跟随Y

X\Y

X或者Y。X、Y为任何字符、字符串。

定义

解释

X?

匹配空字符串,或最多匹配一个X。

X*

匹配空字符串,或一个到多个X。

X+

匹配一个或者多个X。

X{n}

X必须重复n次。

X{n,}

X至少重复n次。

X{n,m}

X至少重复n次,但不多于m次。

下面给出一个实例:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class RegularExpress {
	public static void main(String[] args) throws IOException {
		System.out.print("请输入您的邮箱:");
		try(BufferedReader buffReader = new BufferedReader(new InputStreamReader(System.in))) {
			String strInput = buffReader.readLine();
			if (strInput.matches("(\\w+)(.\\w+)*@(\\w+\\.)(com|edu|net|org|gov|cn)")) {
				System.out.println("恭喜您,通过验证!");
			}
			else {
				System.out.println("输入不合法,请重新输入!");
			}
		}
	}
}

运行结果如下:

请输入您的邮箱:614106917@qq.com
恭喜您,通过验证!
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013年12月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档