java 正则表达式
来源:互联网 发布:杭州整站优化公司 编辑:程序博客网 时间:2024/06/05 14:51
概念
正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
正则表达式常用语法:
[] 代表一位
[a-z]{5} 限制必须是5位并且每一位的范围是a到z之间
[a-zA-Z0-9]{5,11} 限制必须是5位到11位并且每一位的范围是a到z之间或A到Z之间或0到9之间
[a-z]{5,} 限制必须是5位以上并且每一位的范围是a到z之间
[a-z]{0,5} 限制必须是5位以下并且每一位的范围是a到z之间
[\\d]等于[0-9]
[\\w]等于[a-zA-Z0-9]
如果一个位的取值只有一个可以省略括号,但这个值不能是 .,因为.代表任意字符
qq邮箱:
[1-9][09]{4,10}@qq[.]com
[1-9][09]{4,10}[@][q][q][.][c][o][m]
字符串使用正则表达式的方法:
1. matches(String regex) 告知此字符串是否匹配给定的正则表达式。
如:匹配邮箱
2. public String replaceAll(String regex, String replacement) 使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
3. public String replaceFirst(String regex, String replacement) 使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
4. split(String regex) ; 根据给定正则表达式的匹配拆分此字符串。
//将输出:
//12 2E D2 4F 14 EE
正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
正则表达式常用语法:
[] 代表一位
[a-z]{5} 限制必须是5位并且每一位的范围是a到z之间
[a-zA-Z0-9]{5,11} 限制必须是5位到11位并且每一位的范围是a到z之间或A到Z之间或0到9之间
[a-z]{5,} 限制必须是5位以上并且每一位的范围是a到z之间
[a-z]{0,5} 限制必须是5位以下并且每一位的范围是a到z之间
[\\d]等于[0-9]
[\\w]等于[a-zA-Z0-9]
如果一个位的取值只有一个可以省略括号,但这个值不能是 .,因为.代表任意字符
qq邮箱:
[1-9][09]{4,10}@qq[.]com
[1-9][09]{4,10}[@][q][q][.][c][o][m]
字符串使用正则表达式的方法:
1. matches(String regex) 告知此字符串是否匹配给定的正则表达式。
如:匹配邮箱
String emial = "yztc@163.com"; boolean matches = emial.matches("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"); System.out.println(matches);//true
2. public String replaceAll(String regex, String replacement) 使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
String src = new String("ab43a2c43d"); System.out.println(src.replaceAll("[\\d]","f")); =>abffafcffd System.out.println(src.replaceAll("[a]","f")); =>fb43fc23d
3. public String replaceFirst(String regex, String replacement) 使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
String src = new String("ab43a2c43d"); System.out.println(src.replaceFirst("[\\d],"f")); =>abf32c43d System.out.println(src.replaceFirst("[4]","h")); =>abh32c43d
4. split(String regex) ; 根据给定正则表达式的匹配拆分此字符串。
String mime = "12:2E:D2:4F:14:EE"; String[] split = mime.split("[:]"); for (String str : split) { System.out.print(str+" "); }
//将输出:
//12 2E D2 4F 14 EE
阅读全文
0 0
- Java 正则表达式正则
- 【正则表达式】Java正则表达式
- 正则表达式 JAVA正则表达式
- 【Java】【正则表达式】正则表达式
- Java 正则表达式详解_正则表达式
- java正则表达式!正则表达式踩坑!!!
- 正则表达式工具类,正则表达式封装,Java正则表达式
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- java和正则表达式
- java正则表达式详解!
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- 内存管理
- IO多路复用
- poj 2488A Knight's Journey(DFS+回溯)
- Linux的常用命令
- 海量数据处理问题
- java 正则表达式
- Java快捷键
- hdu1754————I Hate It(线段树)
- bootstrap系列之二排版基础
- Hook
- 啊哈磊的挑战,前几个比较简单的题。
- dependencies与dependencyManagement的区(转自:http://blog.csdn.net/liutengteng130/article/details/46991829)
- 用类加载器实现Java插件式开发
- 彻底解决 LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏