- 浏览: 194295 次
文章分类
最新评论
JAVA RegularExpressionsJAVA RegularExpressions 流行于unix
幽默 豁达的女生可遇而不可求
用途:匹配 查找 替换
for instance:IP地址是否正确,从网页爬出email url
下载网页:不仅可以下载当前网页 而且可以下载当前网页中的链接
java.lang.String java.util.regex.Pattern java.util.regex.Matcher
替代StringTonkier
import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args) { //����ʶ������ʽ�ĸ��� p("abc".matches("...")); p("a8729a".replaceAll("\\d", "-")); Pattern p = Pattern.compile("[a-z]{3}"); Matcher m = p.matcher("fgh"); p(m.matches()); p("fgha".matches("[a-z]{3}")); //������ʶ. * + ? p("a".matches(".")); p("aa".matches("aa")); p("aaaa".matches("a*")); p("aaaa".matches("a+")); p("".matches("a*")); p("aaaa".matches("a?")); p("".matches("a?")); p("a".matches("a?")); p("214523145234532".matches("\\d{3,100}")); p("192.168.0.aaa".matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}")); p("192".matches("[0-2][0-9][0-9]")); //��Χ p("a".matches("[abc]")); p("a".matches("[^abc]")); p("A".matches("[a-zA-Z]")); p("A".matches("[a-z]|[A-Z]")); p("A".matches("[a-z[A-Z]]")); p("R".matches("[A-Z&&[RFG]]")); //��ʶ\s \w \d \ p(" \n\r\t".matches("\\s{4}")); p(" ".matches("\\S")); p("a_8".matches("\\w{3}")); p("abc888&^%".matches("[a-z]{1,3}\\d+[&^#%]+")); p("\\".matches("\\\\")); //POSIX Style //p("a".matches("\\p{Lower}")); //boundary p("hello sir".matches("^h.*")); p("hello sir".matches(".*ir$")); p("hello sir".matches("^h[a-z]{1,3}o\\b.*")); p("hellosir".matches("^h[a-z]{1,3}o\\b.*")); //whilte lines p(" \n".matches("^[\\s&&[^\\n]]*\\n$")); p("aaa 8888c".matches(".*\\d{4}.")); p("aaa 8888c".matches(".*\\b\\d{4}.")); p("aaa8888c".matches(".*\\d{4}.")); p("aaa8888c".matches(".*\\b\\d{4}.")); //email //p("asdfasdfsafsf@dsdfsdf.com".matches("[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+")); //matches find lookingAt Pattern p = Pattern.compile("\\d{3,5}"); String s = "123-34345-234-00"; Matcher m = p.matcher(s); p(m.matches()); m.reset(); p(m.find()); p(m.start() + "-" + m.end()); p(m.find()); p(m.start() + "-" + m.end()); p(m.find()); p(m.start() + "-" + m.end()); p(m.find()); //p(m.start() + "-" + m.end()); p(m.lookingAt()); p(m.lookingAt()); p(m.lookingAt()); p(m.lookingAt()); //replacement Pattern p = Pattern.compile("java", Pattern.CASE_INSENSITIVE); Matcher m = p.matcher("java Java JAVa JaVa IloveJAVA you hateJava afasdfasdf"); StringBuffer buf = new StringBuffer(); int i=0; while(m.find()) { i++; if(i%2 == 0) { m.appendReplacement(buf, "java"); } else { m.appendReplacement(buf, "JAVA"); } } m.appendTail(buf); p(buf); //group Pattern p = Pattern.compile("(\\d{3,5})([a-z]{2})"); String s = "123aa-34345bb-234cc-00"; Matcher m = p.matcher(s); while(m.find()) { p(m.group()); } //qulifiers Pattern p = Pattern.compile(".{3,10}+[0-9]"); String s = "aaaa5bbbb68"; Matcher m = p.matcher(s); if(m.find()) p(m.start() + "-" + m.end()); else p("not match!"); //non-capturing groups Pattern p = Pattern.compile(".{3}(?=a)"); String s = "444a66b"; Matcher m = p.matcher(s); while(m.find()) { p(m.group()); } //back refenrences Pattern p = Pattern.compile("(\\d(\\d))\\2"); String s = "122"; Matcher m = p.matcher(s); p(m.matches()); //flags�ļ�д //Pattern p = Pattern.compile("java", Pattern.CASE_INSENSITIVE); p("Java".matches("(?i)(java)")); } public static void p(Object o) { System.out.println(o); } }
发表评论
-
JDK配置
2012-09-19 14:13 692JAVA_HOME C:\Program Files\ ... -
Java abstract class interface 区别
2012-09-09 23:35 9901.abstract class 表示的是一种继承关系,并 ... -
全组合
2012-08-28 23:10 880package cn.xmu.microsoft; ... -
全排列
2012-08-28 11:35 840private static String[] perm ... -
Java 方法引用
2012-08-12 11:23 781一个对象的引用本质上是一个很强的完整和安全方面约束能力的对象指 ... -
Java 动态绑定 静态绑定
2012-08-12 11:07 822静态绑定:使用编译类型的对象引用 动态绑定:使用运行类型所指 ... -
A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available
2012-05-26 15:34 954Eclipse 在 Unbutu下双击图标启动会出现上述问题, ... -
Java BitSet
2012-04-13 09:29 928//说明 bs 至少能够装下65bits 大小由系统 ... -
Java 中文编码问题
2012-04-10 22:09 777import java.io.UnsupportedEn ... -
Hadoop in-mapper combining 实例
2012-04-08 14:46 2597import java.io.IOException; ... -
Java 正则表达式
2012-04-08 09:50 873Pattern p = Pattern.compile( ... -
Java 加载属性配置文件
2012-04-07 16:49 677import java.util.MissingReso ... -
Java notify wait
2012-04-06 09:42 1075wait 和 notify 是Object类而非Thread类 ... -
Dangling meta character '*' near index 0
2012-04-05 14:12 1221这个由于是在java中使用split(“”);造成的,在 ... -
Logger
2012-04-05 08:54 788/LogTest/src/log4j.properties ... -
分割字符串时存在多个分隔符
2012-03-20 17:14 910public static void main(Str ... -
Error: could not open `C:Program FilesJavajre6libamd64jvm.cfg'
2012-02-26 18:55 1076重新配置环境变量后出现可以编译,不可以运行... 删除 ... -
JAVA 运行包中的类
2012-02-23 13:41 1082Java中的包是以目录的形式组织的,在java文件中如果指定了 ... -
Data Access Object
2012-02-18 21:24 760DAO:Data Access Object 把项目开发分为 ... -
文件读写问题
2012-02-16 13:36 746'赵','1234' '钱','2345''孙','3456 ...
相关推荐
Java正则表达式是Java编程语言中的一个强大工具,用于处理文本字符串,它基于模式匹配的概念,能够高效地搜索、替换或提取文本。...学习和理解Java Regular Expressions是每个Java程序员必备的技能之一。
Java经典书籍,java正则表达式,英文版。
You will begin by discovering what regular expressions are and how they work with Java. This easy-to-follow guide is a great place from which to familiarize yourself with the core concepts of regular ...
Java 9 Regular Expressions 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
Java 9 Regular Expressions 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
Java 9 Regular Expressions 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或...
High Performance Java IO And Regular Expressions 高性能JAVA IO 与正则表达式
由于当前版本的 Java Tutorial 是基于 JDK 6.0 的,因此其中的示例程序也用到了 JDK 6.0 中的新增类库,但正则表达式在 JDK 1.4 就已经存在了,为了方便大家使用,改写了部分的源代码,源代码类名中后缀为“V4”的...
《Wrox - Beginning Regular Expressions》是一本专为初学者设计的正则表达式入门教程。这本书深入浅出地介绍了正则表达式的基本概念、语法和应用,旨在帮助读者掌握这一强大的文本处理工具。 正则表达式(Regular ...
**"Regular Expressions Cookbook.pdf"** 这个标题明确指出本书的主题是正则表达式(Regular Expressions,简称 Regex)。正则表达式是一种强大的文本处理工具,被广泛应用于搜索、替换以及解析文本等任务中。...
书名:Mastering Regular Expressions, 3rd Edition 格式:CHM 语言:English 简介: Regular expressions are an extremely powerful tool for manipulating text and data. They are now standard ...
正则表达式(Regular Expressions,简称regex)是编程领域中一种强大的文本处理工具,它用于模式匹配、数据提取、验证输入等任务。这个“Regular.Expressions”资料包显然是为开发者设计的,旨在深入理解正则表达式...
正则表达式(Regular Expression)是编程语言中用于模式匹配和文本搜索的强大工具,广泛应用于数据验证、文本提取、搜索与替换等多个领域。 本书涵盖了正则表达式的各个方面,包括基础语法、高级特性和实践应用。在...
随着互联网的迅速发展,几乎所有工具软件和程序...本书主要讲解了正则表达式的特性和流派、匹配原理、优化原则、实用诀窍以及调校措施,并详细介绍了正则表达式在Perl、Java、.NET、PHP中的用法。中文版更方便阅读。
### 正则表达式的掌握与应用 ——《Mastering Regular Expressions, 3rd Edition》概览 #### 核心知识点解析 **正则表达式(Regular Expressions)概述** 正则表达式是一种用于文本数据处理的强大工具。它能够...