目录
一、正则表达式初识
1、 正则表达式是使用单个字符串来描述、匹配一些列符合某个语法规则的字符串
2、 使用场景
(1)、批量提取、替换有规律的字符串
(2)、在各种高级的文本编辑器中使用
(3)、在各类的办公软件(Office等)中使用
(4)、用户输入的合法性验证(IP地址,特殊订单号的要求等)
(5)、模板引擎的标签库开发
(6)、网络爬虫(抓取机器人)的开发
(7)、批量的问吧高效处理
3、 Windows系统命令行中最简单的正则表达式
(1)、 * 任意长度的字符串
(2)、 ? 长度为1的任意字符串
4、 例1:在C盘下有个hh的文件夹,需要用正则表达式列出tex与dll文件
(1)、cmd打开控制台,并打开到hh文件夹,发现打开的列表和上面文件夹打开的看到的文件是一样的
(2)、使用正则表达式:*.dll:任意字符串+ .dll 的文件
如下图使用*.dll这个表达式,输出结果就是dll所有文件
5、 例2:a?c.txt表示文件名是以a开头,中间有且仅有一个任意字符,最后一个字符是c 的txt文件
二、元字符及其反义
1、常用的元字符
(1)、 . :匹配除换行以外的任意字符
黄色蓝色都是匹配到得字符(便于查看所有用了不同的两种颜色)。这个元字符匹配到了所有出换行外的字符。总共42个
(2)、 \w :匹配字母或数字或下划线或汉字,
数字字母下划线汉字都匹配出来了,有个逗号没匹配出来
(3)、 \s : 匹配任意的空白符
匹配到了空格和换行,最后是哪几个都是换行符
(4)、 \d :匹配数字
匹配到了2个数字
(5)、 \b :匹配单词的开始或结束
当正则表达式写入一个单词,它会匹配到所有这样的字符
当加入\b来标识单词的开始或结束时,它字符匹配到一个单词。有其他字符连起来的它会匹配不到
(6)、 ^ :匹配字符串的开始
(7)、 $ :匹配字符串的结束
以下表达式表示开始(^)和结($)都要是数字的重复组合(\d+)
注:开始和结束不一定要搭配是用,可以分开使用。比如我只想管开头是c
2、 元字符的反义:把元字符的字母改成大写
(1)、 \W :匹配任意不是字母,数字,下划线,汉字的字符
所以只能匹配除换行和空格和逗号
(2)、 \S :匹配任意不是空白符的字符
除了空白和换行其他都匹配到了
(3)、\D :匹配任意非数字的字符
除了数字其他都匹配到了
(4)、 \B :匹配任意不是单词开头或结束的位置
(5)、 [^x] :匹配出来x以外的任意字符
出来o外的其他所有字符都匹配到了
(6)、[^aeiou] :匹配除了aeiou这几个字母外的任意字符
除了aeiou其他字符都匹配到了