1、简单认识正则表达式的概念
print("abc".matches("..."));//true
print("a8729a".replaceAll("\\d", "-"));//a----a
Pattern p = Pattern.compile("[a-z]{3}");
Matcher m = p.matcher("fgh");
print(m.matches());//true
print("fgha".matches("[a-z]{3}"));//false
2、初步认识. * + ? {n,m}
print("a".matches("."));//true
print("aa".matches("aa"));//true
print("aaaa".matches("a*"));//true 0个或多个
print("aaaa".matches("a+"));//true 1个或多个
print("".matches("a*"));// true
print("aaaa".matches("a?"));//false 0个或1个
print("".matches("a?")); //true
print("a".matches("a?"));//true
print("214523145234532".matches("\\d{3,100}"));//true at least 3 but not more than 100 times
print("192.168.0.aaa".matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"));//false
print("192".matches("[0-2][0-9][0-9]"));//true
3、范围
print("a".matches("[abc]"));//true
print("a".matches("[^abc]"));//false
print("A".matches("[a-zA-Z]"));//true
print("A".matches("[a-z]|[A-Z]"));//true
print("A".matches("[a-z[A-Z]]"));//true
print("R".matches("[A-Z&&[RFG]]"));//true
4、认识\s \w \d \S \W \D
print(" \n\r\t".matches("\\s{4}"));//true
print(" ".matches("\\S"));//false
print("a_8".matches("\\w{3}"));//w is a word character [a-zA-Z_0-9] true
print("abc888&^%".matches("[a-z]{1,3}\\d+[&^#%]+"));//true
print("\\".matches("\\\\"));//true
5、boundary and whitelines
print("hello sir".matches("^h.*")); //true
print("hello sir".matches(".*ir$"));//true
print("hello sir".matches("^h[a-z]{1,3}o\\b.*"));//true
print("hellosir".matches("^h[a-z]{1,3}o\\b.*"));//false
print(" \n".matches("^[\\s&&[^\\n]]*\\n$"));//true
print("aaa 8888c".matches(".*\\d{4}.")); //true
print("aaa 8888c".matches(".*\\b\\d{4}.")); //true
print("aaa8888c".matches(".*\\d{4}."));//true
print("aaa8888c".matches(".*\\b\\d{4}."));//false
6、email
print("asdfasdfsafsf@dsdfsdf.com".matches("[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+"));
7、matches find lookingAt
attern p = Pattern.compile("\\d{3,5}");
String s = "123-34345-234-00";
Matcher m = p.matcher(s);
print(m.matches());//false
m.reset();
print(m.find());//true
print(m.start() + "-" + m.end());//0-3
print(m.find());//true
print(m.start() + "-" + m.end());//4-9
print(m.find());//true
print(m.start() + "-" + m.end());//10-13
print(m.find());//false
print(m.lookingAt());//always from beggining true
print(m.lookingAt());true
print(m.lookingAt());true
print(m.lookingAt());true
8、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);//把最后的字符串追加上
print(buf);
9、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()) {
print(m.group());//123aa 34345bb 234cc
}
分享到:
相关推荐
浅谈正则表达式在文本排版及校对中的应用 可以在word等中使用
这篇文档“浅谈正则表达式实例入门共9页.pdf”似乎是一个初学者的教程,旨在帮助读者快速理解和应用正则表达式。 在正则表达式中,有几种基本的元字符和操作符,它们构成了各种可能的匹配模式: 1. **元字符**:如...
本文将深入浅出地探讨JavaScript中的正则表达式及其基本用法。 首先,创建JavaScript正则表达式有两种方式:通过`new RegExp()`构造函数或者直接使用正则字面量(斜杠包围的模式)。例如: ```javascript var ...
本文将对正则表达式的基础知识进行详细的介绍,从什么是正则表达式开始,逐步深入浅出地讲解正则表达式的基本概念、正则表达式引擎、文字符号、特殊字符、不可显示字符、正则表达式引擎的内部工作机制等。...
本文将浅谈PHP中的正则表达式格式及其应用。 PHP支持多种正则表达式函数,如`ereg()`、`ereg_replace()`、`eregi_replace()`和`split()`等。这些函数均接受正则表达式作为其第一个参数,帮助开发者执行匹配、替换和...
正则表达式是一种高度灵活的字符串匹配语言,它可以用来识别和操作文本中的各种模式。它被广泛用于各种编程语言中,用以实现文本搜索、验证输入、提取信息以及替换文本中的内容等功能。正则表达式不仅仅是一个工具,...
正则表达式是一种文本模式,包括普通字符(例如,字母或数字)和特殊字符(称为"元字符")。它提供了一种灵活的搜索和匹配文本字符串的方法。在正则表达式中,分组和引用是两个重要的功能,它们允许我们在文本中查找...
问题描述:很多网站会对用户发帖内容进行一定的检查,并自动把敏感词修改为特定的字符。... 您可能感兴趣的文章:Python 实现王者荣耀中的敏感词过滤示例python 实现敏感词过滤的方法浅谈Python 敏感词过滤的实现
正则表达式是用于字符串匹配、搜索和替换的强大工具,广泛应用于各种文本处理场景。在JavaScript中,正则表达式除了能匹配单个字符以外,还支持对子表达式进行分组,以便更精确地控制匹配的范围,这在需要对文本进行...
文档讲述了正则表达式的基本语法、使用技巧,是本人通过测试的学习总结,非常适合初学者,因为我也是作为初学者来研究的
正则表达式是一种用于匹配字符串中字符组合的模式。在JavaScript编程语言中,正则表达式是处理字符串的强大工具,它可以用来检查一个字符串是否符合某种模式(称为“正则”),或者进行字符串搜索、替换等操作。在...
### 浅谈Java中正则表达式的优化方法 在日常的软件开发过程中,正则表达式作为一种强大的文本处理工具被广泛应用于数据验证、文本搜索与替换等场景之中。尤其是在Java语言环境中,`java.util.regex`包提供了丰富的...
正则表达式(Regular Expression,简称RE)是处理文本的强大工具,它由一系列字符和元字符组成,主要用于文本查询和字符串操作。在Shell编程中,正则表达式被广泛应用于数据流处理,如数据过滤、查找和替换等任务。...
在Python编程中,处理含有中文字符串的正则表达式时,编码问题是编程者需要面对的常见问题之一。由于Python的默认编码格式为ASCII,它无法直接处理中文字符,因为ASCII编码集中并未包含中文字符。因此,在需要处理...
在探讨Javascript中的正则表达式应用时,我们主要关注如何利用正则表达式完成模式匹配、搜索、替换等常见的字符串操作。正则表达式在Javascript中是一种强大的文本处理工具,允许开发者定义搜索模式,匹配字符串中的...
修饰符是正则表达式中的特殊代码,可以调整表达式的搜索行为。修饰符可以单独使用,也可以组合使用,以适应不同的匹配需求。下面是PHP中常用的正则表达式修饰符及其功能介绍: 1. 修饰符/i(不区分大小写): 修饰...
在正则表达式中,默认情况下,量词(如"*"、"+"和"{n}")是贪婪的,意味着它们会尽可能多地匹配字符。例如,表达式"http:(.*)com"中的"(.*)"是一个贪婪的匹配,它会尝试匹配尽可能多的字符,直到遇到"com"为止。在...