当前位置:首页 > 开发 > 编程语言 > 正则表达式 > 正文

JAVA正则表达式匹配基础

发表于: 2014-10-13   作者:百合不是茶   来源:转载   浏览:
摘要:   正则表达式;提高程序的性能,简化代码,提高代码的可读性,简化对字符串的操作   正则表达式的用途; 字符串的匹配 字符串的分割 字符串的查找 字符串的替换       正则表达式的验证语法     [a] //[]表示这个字符只出现一次 ,[a] 表示a只出现一

 

正则表达式;提高程序的性能,简化代码,提高代码的可读性,简化对字符串的操作

 

正则表达式的用途;

字符串的匹配

字符串的分割

字符串的查找

字符串的替换

 

 

 

正则表达式的验证语法

   

  [a]    //[]表示这个字符只出现一次  ,[a] 表示a只出现一次
 [ abc ] 表示出现a或b或c只出现一次
 [^abc]   任何字符,除了 a、b 或 c
 [a-zA-Z]  a 到 z 或 A 到 Z,两头的字母包括在内(范围) 
 [a-d[m-p]]  a 到 d 或 m 到 p:[a-dm-p](并集) 
 [a-z&&[def]]  d、e 或 f(交集) 
 [a-z&&[^bc]]  a 到 z,除了 b 和 c:[ad-z](减去) 
 [a-z&&[^m-p]]  a 到 z,而非 m 到 p:[a-lq-z](减去)

 

 

 
验证字母是否为小写

Pattern pattern = Pattern.compile("a-z");
 Matcher matcher = pattern.matcher("s");
 matcher.matches();
条件成立为true

 

预定义字符类 
 

.   任何字符(与行结束符可能匹配也可能不匹配) 
\d  数字:[0-9] 
\D  非数字: [^0-9] 

\w   [a-zA-Z0-9]

\W   表示^\w以外的

 ^   非
 
验证字母是为任意字符+bc

Pattern pattern = Pattern.compile(".bc");
Matcher matcher = pattern.matcher("[abs?1]bc");
matcher.matches();
条件成立为true

 

 

数量词;

n?  一次或一次也没有

n*  0次或多次

n+  一次或多次

N{5} 出现五次

n{5,}  出现五次以上

n{5,10}  出现5到10次

 

  

   

验证字符串

Pattern pattern = Pattern.compile( "JA[V]*A" );
Matcher matcher = pattern.matcher( "JAA" );
matcher.matches();
条件成立为true

   

我的作业:

 

1,匹配邮箱地址:  admin_a_a@163.com     admin@163.com.cn

1),字母开头

2),字母,数字,下划线特殊符号组成

String str = "admin_999jihu_aa@163.com.xc";
		String ragexDemo = "[a-zA-Z]([a-zA-Z0-9]*[-_]?[a-zA-Z0-9]+)*"
				+ "@([a-zA-Z0-9]+).[a-zA-Z]{3}.?[a-zA-Z]{0,2}";
		boolean b = str.matches(ragexDemo);
		System.out.println(b);

 

  

 2.验证ip地址是否合法

匹配ip地址在0.0.0.0~~~~~~~~~255.255.255.254之间的

 //要匹配的字符
 String str = "0.0.155.254";
 //匹配规则
 String ragexDemo ="[12]?[0-9]?[0-5].[12]?[0-9]?[0-5].
			+""+[12]?[0-9]?[0-5].[12]?[0-9]?[0-4]";
boolean b = str.matches(ragexDemo);
System.out.println(b);

 

 

 

    

JAVA正则表达式匹配基础

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
/** * (1)能匹配的年月日类型有: * 2014年4月19日 * 2014年4月19号 * 2014-4-19 * 2014/4/19 * 201
1 匹配数字:[0-9]是[0123456789]的简写,除数字以外的其他字符[^0-9]即可。 下面是数字元字符: \d
Text Symbol 1. The special text symbol - Meta Characters a. [ ] \ ^ $ . | ? * + ( ) those cha
一、正则表达式基础知识 我们先从简单的开始。假设你要搜索一个包含字符“cat”的字符串,搜索用的正
本篇文章是学习尚学堂的关于正则表达式的视频教程时,所做的笔记。供广大编程爱好者学习之用,也留
一、正则表达式术语 1)元字符 : 非一般字符,具有某种意义的字符。如 : \bX : \b边界符, 以 X开
Java正则表达式 基础 1.字符 x 字符 x。例如a表示字符a \\ 反斜线字符。在书写时要写为\\\\。(注意
司有个业务需要匹配文本中的网址,度娘,谷哥了半天经常看到有对html中获取超链接的正则,只要匹配&
\w 匹配 [a-zA-Z0-9_] \W匹配 [^a-zA-Z0-9_] 匹配空白字符 \s 任何一个空白字符[\t\n\r\f\v] \S 任
一、正则表达式 1.1、概述 符合一规则的表达式:用于专门操作字符串。 正则表达式则必须依靠Pattern
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号