当你正在搜索一份文件,这个文件中包含着单词car,它不区分大小写,但是你不想把包含着字符串car的其他单词(比如scar、carry等)也找出来,这时,就会用到正则表达式。简单地说,正则表达式是一些用来匹配和处理文本的字符串。
正则表达式语言是内置于其他语言或软件产品里的“迷你”语言。但现在几乎所有的语言或工具都支持正则表达式。一般来说,应用程序大多使用菜单选项和对话框来访问正则表达式,而程序设计语言大都在函数或对象类中使用正则表达式。
一、匹配纯文本
my是一个正则表达式。正则表达式可以包含纯文本(甚至可以只包含纯文本)。正则表达式是区分大小写的。
文本:Hello my name is Ben.Please visit my website.
正则表达式:my
匹配结果如下图所示:
二、匹配任意字符
在正则表达式里,特殊字符(或字符集合)用来给出要搜索的东西。.字符(英文句号)可以匹配任何一个单个的字符。示例如下:
文本:
sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
na1.xls
正则表达式:sales.
匹配结果如下图所示:
.字符可以匹配任何单个的字符、字母、数字甚至是.字符本身。在同一个正则表达式里允许使用多个.字符,它们既可以连续出现(..将匹配任意两个字符),也可以间隔着出现在模式的不同位置。
三、匹配特殊字符
.字符在正则表达式里有着特殊的含义。如果模式里需要一个.,就要想办法告诉正则表达式你需要的是.字符本身而不是它在正则表达式里的特殊含义。为此,必须在.字符的前面加上一个\(反斜杠)字符来对它进行转义。\是一个元字符(表示这个字符有特殊含义,而不是字符本身含义)。
文本:
sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
na1.xls
na2.xls
sa1.xls
正则表达式:.a..xls
匹配结果如下图所示:
网友评论