正则那些事儿——入门

当你正在搜索一份文件,这个文件中包含着单词car,它不区分大小写,但是你不想把包含着字符串car的其他单词(比如scar、carry等)也找出来,这时,就会用到正则表达式。简单地说,正则表达式是一些用来匹配和处理文本的字符串。


正则那些事儿——入门_第1张图片

正则表达式语言是内置于其他语言或软件产品里的“迷你”语言。但现在几乎所有的语言或工具都支持正则表达式。一般来说,应用程序大多使用菜单选项和对话框来访问正则表达式,而程序设计语言大都在函数或对象类中使用正则表达式。

一、匹配纯文本

my是一个正则表达式。正则表达式可以包含纯文本(甚至可以只包含纯文本)。正则表达式是区分大小写的。
文本:Hello my name is Ben.Please visit my website.
正则表达式:my
匹配结果如下图所示:


正则那些事儿——入门_第2张图片

二、匹配任意字符

在正则表达式里,特殊字符(或字符集合)用来给出要搜索的东西。.字符(英文句号)可以匹配任何一个单个的字符。示例如下:
文本:
sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
na1.xls
正则表达式:sales.
匹配结果如下图所示:


正则那些事儿——入门_第3张图片

.字符可以匹配任何单个的字符、字母、数字甚至是.字符本身。在同一个正则表达式里允许使用多个.字符,它们既可以连续出现(..将匹配任意两个字符),也可以间隔着出现在模式的不同位置。

三、匹配特殊字符

.字符在正则表达式里有着特殊的含义。如果模式里需要一个.,就要想办法告诉正则表达式你需要的是.字符本身而不是它在正则表达式里的特殊含义。为此,必须在.字符的前面加上一个\(反斜杠)字符来对它进行转义。\是一个元字符(表示这个字符有特殊含义,而不是字符本身含义)。
文本:
sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
na1.xls
na2.xls
sa1.xls
正则表达式:.a..xls
匹配结果如下图所示:

正则那些事儿——入门_第4张图片

学习是一件很快乐的事,这种快乐来自于你的思考。完成一项学习任务固然重要,但更重要的是在完成的过程中学到了什么,掌握了什么,遇到一些什么问题,为什么会出现这种问题,根源是什么,都有哪些解决方案,什么样的情况适合这个方案。只有在不断的思考,你的能力才会有所提升!

你可能感兴趣的:(正则那些事儿——入门)