正则表达式Regex

是什么:一句话,正则表达式是对字符串执行模式匹配的技术。

从一段字符串中提取出所有英文单词、数字、字母和数字。

如果采用传统方法:将字符串的所有字符分割成单个,根据ASCII码判断,在一定范围内就是字母,每获得一个字母就拼接。

java 复制代码
 String content = "根据PC-Meter1996年的调查,平均每个互联网用户每次访问的环球网的网站有5.6个," +
                "每次查看的网页20.8个,而平均阅读每一个网页所需要的时间大约1.4分钟,平均每次上网阅读环球网页的时间大约28分钟。" +
                "作为这样一种具有私人和公共的双重功用的传媒,互联网效用的实现从根本上还是依赖于参与者," +
                "也就是用户的增加。而这一特性又是和网络的性质是完全一致的。";
        //1.先创建一个Pattern对象
//        Pattern pattern = Pattern.compile("[a-zA-Z]");
//        Pattern pattern = Pattern.compile("[0-9]+");
        Pattern pattern = Pattern.compile ("[a-zA-Z]|[0-9]+");
        //2.创建一个匹配器对象matcher,这个matcher按照指定的pattern,到content中去匹配
        Matcher matcher = pattern.matcher(content);
        //3.循环匹配,find的返回值是true/false,即找到就返回true
        while(matcher.find()){
            System.out.println(matcher.group(0));
        }

元字符

1."?"匹配0或1个字符

"used?"可以同时匹配use和used
2."*"匹配0个或多个字符

复制代码
"ab*c"
ac
abc
abbc
adc---匹配失败,a和c中间只能是0或多个b

3."+"匹配至少出现1次的字符

复制代码
"ab+c"
ac----匹配失败,a和c中间必须要有c,且至少一个
abc
abbc

4."."匹配除了换行符以外的任何的字符

5."{}"字符频度限定

复制代码
"ab{2,4}c"
ac----匹配失败,a和c中间必须要有c,且必须有2~4个
abc----匹配失败,a和c中间必须要有c,且必须有2~4个
abbc

"ab{3}c"
ac----匹配失败,a和c中间必须要有c,且必须3个
abbc----匹配失败,a和c中间必须要有c,且必须有3个
abbbc

6."()"内的字符视为一个整体去匹配

复制代码
"(ab)+c"----------------ab视为一个整个,至少有1个ab,而后接c
abc----
ababc
abbbc-----匹配失败,"ab"要么接ab,要么接c

7."|"匹配符号左右任一字符

复制代码
"a (cat|dog)"----------a后必须接空格,空格后必须接cat/dog之一
a cat
a dog
a bird-----匹配失败

8."\[\]"要匹配的字符只能取自\[\]之内

复制代码
"[abc]+"--------任意的字符串,不要求连续,只要a,b,c都至少存在一次就匹配成功
abc
aabbcc
aabb-----匹配失败

"[a-z]"------匹配所有的小写英文字符
"[a-zA-Z]"------匹配所有的大写和小写英文字符
"[a-zA-Z0-9]"------匹配所有的大写和小写英文字符和数字

9."^"和"\[\]"搭配使用,表示匹配排除了"\[\]"中的字符后剩余的所有字符

换行符也是符.

10."^"不与"\[\]"搭配使用时,

11."\"转义字符必须成对出现

复制代码
"\\."------匹配所有的"."

通配符

相关推荐
只愿云淡风清4 天前
正则表达式学习笔记 02:基础语法
笔记·学习·正则表达式
Frag0ut9 天前
Notepad++ 正则表达式完全手册:文本处理的终极武器(2026实战版)
正则表达式·notepad++·数据清洗·日志分析·正则替换·提取ip·正则表达式实战
Patrick在香港12 天前
一个斜杠,把毫秒变成十几秒
android·数据库·python·性能优化·正则表达式·回溯·redos
echome88812 天前
Python 正则表达式:5 个日常够用的模式
python·正则表达式
yivifu14 天前
能够使用Python正则表达式函数的文本处理工具——Calibre电子书编辑器
正则表达式
全栈陈序员14 天前
【Python】基础语法入门(二十九)—— 正则表达式实战:文本处理利器
开发语言·人工智能·python·正则表达式
BruceXu20 天前
\b 在中文里会静默失效:三个正则坑和一份能用的字符边界方案
正则表达式
阿昭L21 天前
正则表达式
正则表达式·编译原理
波力海苔夹心脆67522 天前
C# 正则表达式零基础入门:从“看得懂“到“会用“
经验分享·后端·mysql·正则表达式·c#
FRing0323 天前
JavaScript入门到精通二十四(正则表达式、元字符、修饰符)
开发语言·前端·javascript·正则表达式