----------------------
ASP.Net+Unity开发.Net培训、期待与您交流。
----------------------

正則表達式
正則表達式:基本知识
1  字符,   2 字符类 , 3 提前定义字符类 ,
4 边界匹配器 ,5 Greedy 数量词,6 Logical 运算符 

具体解释:

1 字符 

x   字符 x 

\\ 反斜线字符 

\0n 带有八进制值 0 的字符 n (0 <= n <= 7) 

\0nn 带有八进制值 0 的字符 nn (0 <= n <= 7) 

\0mnn 带有八进制值 0 的字符 mnn(0 <= m <= 3、0 <= n <= 7) 

\xhh 带有十六进制值 0x 的字符 hh 

\uhhhh 带有十六进制值 0x 的字符 hhhh 





\t 制 表符 ('\u0009') 

\n 新行(换行)符 ('\u000A') 

\r 回车符 ('\u000D') 

\f 换页符 ('\u000C') 

\a 报警 (bell) 符 ('\u0007') 

\e 转义符 ('\u001B') 

\cx 相应于 x 的控制符 

  

2 字符类 

[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](减去) 

  

3 提前定义字符类 

. 不论什么字符(与行结束符可能匹配也可能不匹配) 

\d 数字:[0-9] 

\D 非数字: [^0-9] 

\s 空白字符:[ \t\n\x0B\f\r] 

\S 非空白字符:[^\s] 

\w
单词字符:[a-zA-Z_0-9] 

\W 非单词字符:[^\w] 





4 边界匹配器 

^ 行的开头 

$ 行的结尾 

\b 单词边界 

\B 非单词边界 

\A 输入的开头 

\G 上一个匹配的结尾 

\Z 输入的结尾,仅用于最后的结束符(假设有的话) 

\z 输入的结尾 









5 Greedy 数量词 

X?

X, 一次或一次也没有 

X*     X, 零次或多次 

X+   X,一次或多次 

X{n}   X, 恰好 n 次 

X{n,}   X,至少 n 次 

X{n,m}   X,至少 n 次。可是不超过 m 次 









6 Logical 运算符 

XY X 后跟 Y 

X|Y X 或 Y 

(X) X,作为捕获组 





比如:

Email 地址的正則表達式:
//精确的 匹配

    String reg = "[a-zA-Z0-9_]{6,12}@[a-zA-Z0-9]{3,6}(\\.[a-zA-Z]+){1,3}";

    // 笼统的 匹配

    String reg1 = "\\w+@\\w+(\\.\\w+)+";




 


 
---------------------- ASP.Net+Unity开发.Net培训、期待与您交流。 ----------------------
具体请查看:www.itheima.com

黑马程序猿 ---------- Java网络技术之 ---正則表達式 (Day06)的更多相关文章

  1. HDU-1039-Easier Done Than Said?(Java &amp;&amp; 没用正則表達式是我的遗憾.....)

    Easier Done Than Said? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/O ...

  2. 【技术】正則表達式—匹配电话号码,网址链接,Email地址

    #pragma mark - 正则匹配电话号码.网址链接.Email地址 + (NSMutableArray *)addHttpArr:(NSString *)text { //匹配网址链接 NSSt ...

  3. JAVA中正則表達式总结

    昨天,我的朋友请教我正則表達式.我也好久没有写过正則表達式了,昨天刚好看了下如鹏网创始人杨中科老师关于正則表達式的解说.使我加深了正則表達式的印像.现我把他总结下: 很多语言,包含Perl.PHP.P ...

  4. JAVA中正則表達式总结(具体解释及用途)

    很多语言,包含Perl.PHP.Python.JavaScript和JScript,都支持用正則表達式处理文本,一些文本编辑器用正則表達式实现高级"搜索-替换"功能.所以JAVA语 ...

  5. 轻松学习之Linux教程六 正則表達式具体解释

    本系列文章由@超人爱因斯坦出品.转载请注明出处. 作者:超人爱因斯坦    个人站点:http://www.hpw123.net          文章链接:http://hpw123.net/a/L ...

  6. 黑马程序猿————Java基础日常笔记---反射与正則表達式

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 黑马程序猿----Java基础日常笔记---反射与正則表達式 1.1反射 反射的理解和作用: 首 ...

  7. Java正則表達式入门

     众所周知,在程序开发中,难免会遇到须要匹配.查找.替换.推断字符串的情况发生,而这些情况有时又比較复杂,假设用纯编码方式解决,往往会浪费程序猿的时间及精力.因此,学习及使用正則表達式,便成了解决这一 ...

  8. java正則表達式 match、find匹配位置

    如题.对于java正則表達式这几个方法匹配一次后的,匹配位置搞不太清楚,就写了几个样例.例如以下: String ss="ooaaoo"; Pattern pt=Pattern.c ...

  9. JAVA学习第六十五课 — 正則表達式

    正則表達式:主要应用于操作字符串.通过一些特定的符号来体现 举例: QQ号的校验 6~9位.0不得开头.必须是数字 String类中有matches方法 matches(String regex) 告 ...

随机推荐

  1. asp.net插入sql server 中文乱码问题解决方案

    创建数据库的代码---创建promary表 create table promary ( proID int primary key, proName varchar(50) not null ) 出 ...

  2. ALEX WANG(王培沂)品牌_时尚频道_凤凰网

    ALEX WANG(王培沂)品牌_时尚频道_凤凰网 ALEX WANG地址: 北京朝阳区百子湾路32号苹果社区10号楼B座2205 订制热线:010-58263402

  3. 利用KVC使用自定义的控件

    KVC简单使用: 可以用来设置属性的值例如有个Person类下有个属性name [self setvalue:@"yourname" forkey:@"name" ...

  4. if else配对问题

    else语句总是与离它最近的if语句配对,所以在if语句的嵌套中一定要注意else语句与哪个if语句匹配 #include <iostream> using namespace std; ...

  5. junit4笔记

    这两天在复习hibernate,看的小峰的视频,觉得很不错. 现在把里面的junit4的一些使用方法记下来.方便以后的差用.代码如下. package com.java1234.service; im ...

  6. docker学习笔记14:Dockerfile 指令 ENV介绍

    ENV指令用来在镜像构建过程中设置环境变量.我们来看一个Dockerfile的例子: #test FROM ubuntu MAINTAINER hello ENV MYDIR /mydir RUN m ...

  7. 转:Javascript的10个设计缺陷

    作者: 阮一峰 日期: 2011年6月30日 前几篇文章,我经常说Javascript的设计不够严谨,有很多失误. 今天的这一篇,前半部分就谈为什么会这样,后半部分将列举Javascript的10个设 ...

  8. JAVA学习第三十六课(经常使用对象API)— Set集合:HashSet集合演示

    随着Java学习的深入,感觉大一时搞了一年的ACM,简直是明智之举,Java里非常多数据结构.算法类的东西,理解起来就轻松多了 Set集合下有两大子类开发经常使用 HashSet集合 .TreeSet ...

  9. BZOJ 1025: [SCOI2009]游戏( 背包dp )

    显然题目要求长度为n的置换中各个循环长度的lcm有多少种情况. 判断一个数m是否是满足题意的lcm. m = ∏ piai, 当∑piai ≤ n时是满足题意的. 最简单我们令循环长度分别为piai, ...

  10. C 语言学习 之搭建环境和熟悉命令

    Open Terminal 打开终端To run a command as administrator (user "root"), use "sudo <comm ...