正则表达式

转载 2006年06月23日 15:24:00

正则表达式是以文本描述字符组合的模式。在代码搜索中使用它们有助于描述一些概念,例如“以‘var’开始的行”和“包含数字的属性值”。有关搜索的更多信息,请参见搜索和替换标签和属性。

下表列出了在正则表达式中使用的特殊字符、其含义和用法示例。若要搜索包含该表中某一特殊字符的文本,请在特殊字符前面附加一个反斜杠,令其“转义”。例如,若要在 some conditions apply* 短语中搜索实际的星号,您的搜索模式应类似于:apply/*。如果您没有令星号转义,您将找到“apply”的所有匹配项(以及“appl”、“applyy”和“applyyy”的所有匹配项),而不只是后面跟有星号的那些匹配项。

字符
 匹配
 示例
 
^
 输入或行的起始部分。
 ^T 匹配“This good earth”中的“T”,但不匹配“Uncle Tom's Cabin”中的“T”。
 
$
 输入或行的结尾部分。
 h$ 匹配“teach”中的“h”,但是不匹配“teacher”中的“h”
 
*
 0 个或多个前置字符。
 um* 匹配“rum”中的“um”、“yummy”中的“umm”以及“huge”中的“u”
 
+
 1 个或多个前置字符。
 um+ 匹配“rum”中的“um”和“yummy”中的“umm”,但在“huge”中没有任何匹配项
 
?
 前置字符最多出现一次(即,指示前置字符是可选的)。
 st?on 匹配“Johnson”中的“son”和“Johnston”中的“ston”,但在“Appleton”和“tension”中没有任何匹配项
 
.
 除换行符外的任何单字符。
 .an 匹配短语“bran muffins can be tasty”中的“ran”和“can”
 
x|y
 x 或 y。
 FF0000|0000FF 匹配 bgcolor=”#FF0000” 中的“FF0000”和 font color=”#0000FF” 中的“0000FF”
 
{n}
 恰好 n 个前置字符。
 o{2} 匹配“loom”中的“oo”和“mooooo”中的前两个“o”,但在“money”中没有任何匹配项
 
{n,m}
 至少 n 个、至多 m 个前置字符。
 F{2,4} 匹配“#FF0000”中的“FF”和“#FFFFFF”中的前四个“F”
 
[abc]
 用括号括起来的字符中的任何一个字符。用连字符指定某一范围的字符(例如, [a-f] 等效于 [abcdef])。
 [e-g] 匹配“bed”中的“e”、“folly”中的“f”和“guard”中的“g”
 
[^abc]
 未在括号中括起来的任何字符。用连字符指定某一范围的字符(例如,[^a-f] 等效于[^abcdef])。
 [^aeiou] 最初匹配“orange”中“r”、“book”中的“b”和“eek!”中的“k”
 
/b
 词边界(例如空格或回车符)。
 /bb 匹配“book”中的“b”,但在“goober”和“snob”中没有任何匹配项
 
/B
 词边界之外的任何内容。
 /Bb 匹配“goober”中的“b”,但在“book”中没有任何匹配项
 
/d
 任何数字字符。等效于 [0-9]。
 /d 匹配“C3PO”中的“3”和“apartment 2G”中的“2”
 
/D
 任何非数字字符。等效于 [^0-9]。
 /D 匹配“900S”中的“S”和“Q45”中的“Q”
 
/f
 换页符。
 
 
/n
 换行符。
 
 
/r
 回车符。
 
 
/s
 任何单个空白字符,包括空格、制表符、换页符或换行符。
 /sbook 匹配“blue book”中的“book”,但在“notebook”中没有任何匹配项
 
/S
 任何单个非空白字符。
 /Sbook 匹配“notebook”中的“book”,但在“blue book”中没有任何匹配项
 
/t
 制表符。
 
 
/w
 任何字母数字字符,包括下划线。等效于 [A-Za-z0-9_]。
 b/w* 匹配“the barking dog”中的“barking”以及“the big black dog”中的“big”和“black”
 
/W
 任何非字母数字字符。等效于 [^A-Za-z0-9_]。
 /W 匹配“Jake&Mattie”中的“&”和“100%”中的“%”
 
Control+Enter 或 Shift+Enter (Windows)、 或者 Control+Return 或 Shift+Return 或 Command+ Return (Macintosh)
 回车符。确保如果没有使用正则表达式,则在搜索时取消对“忽略空白差别”的选择。请注意,这匹配特定字符,而不是一般意义上的换行符;例如,它不匹配 <br> 标签或 <p> 标签。回车符在“设计”视图中显示为空格而不是换行符。
 
 

使用括号在正则表达式内分隔出以后要引用的分组。然后在“替换”域中使用 $1、$2、$3 等来引用第一个、第二个、第三个和更后面的括号分组。

注意:在“查找内容”文本框中使用 /1、/2、/3 等(而不是 $1、$2、$3)来引用正则表达式中更早的括号分组。

例如,通过搜索 (/d+)//(/d+)//(/d+) 并用 $2/$1/$3 替换它,可以在由斜杠分隔的日期中交换日和月(因此可以在美国样式日期和欧洲样式日期之间进行转换)。

正则表达式之?、(?:pattern)、(?!pattern)、(?=pattern)理解及应用

今天朋友问我一个问题,是这样子的,通过正则表达式匹配html标签input包含hidden的字符串,具体如下: "" 匹配下来,应该输出: "" 读了这个问题之后,觉得挺简单的,直...
  • sunhuaer123
  • sunhuaer123
  • 2013年11月15日 19:09
  • 59706

正则表达式 "^+$"等符号意义

1、字符/: 意义:对于字符,通常表示按字面意义,指出接着的字符为特殊字符,不作解释. 例如:/b/匹配字符’b’,通过在b 前面加一个反斜杠,也就是/b/,则该字符变成特殊字符,表示匹配一个单词的分...
  • github_36362235
  • github_36362235
  • 2016年11月23日 11:31
  • 1752

正则表达式——入门

写程序7年,从我身边接触到的人来看,相当多的程序员把正则表达式看得很高深,甚至觉得是一道不可跨越的鸿沟。有此想法的原因很简单:只是因为你没有花上几个小时的时间去学习一下正则的基础。对,只需要几个小时,...
  • sq_zhuyi
  • sq_zhuyi
  • 2013年10月18日 10:29
  • 18550

最全正则表达式汇总—想要的都有了

正则式太难学,而且容易忘记 ,西西是看过很多次,都是一会就全部不记得了滴。很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是不很符合要求。所以我最近把开发中常用的一...
  • SH_King
  • SH_King
  • 2015年07月24日 14:01
  • 1380

正则表达式中的"^"这个符号的一些思考

在学习正则表达式的时候,一些常见的规则我们都不难理解,但是有 一个正则表达式中的特殊字符让我一直有点搞不懂,就是”^”这个字符,文档上给出了解释是匹配输入的开始,如果多行标示被设置成了true,同时会...
  • sufubo
  • sufubo
  • 2016年03月27日 11:03
  • 18765

正则表达式中的逻辑运算符或(怎么用逻辑运算符或连接两个正则表达式)

今天使用正则表达式是遇到一个问题, 磨了半天, 发现犯了个低级错误, 因此记录下来加深印象 问题描述:  我需要把 ^drawable(-[a-zA-Z0-9]+)*$  和  ^mipmap(-[a...
  • voo00oov
  • voo00oov
  • 2015年07月20日 11:07
  • 9697

正则表达式常见例题

常见例题 例1:北美地区的电话号     编码方案:电话号码有一个3位数的区号和一位7位数的号码组成(这个7位数有分成  一个3位的局号和一个4位的路号,局号和路号之间使用连字符分隔) 每位电话号...
  • wenwen1538
  • wenwen1538
  • 2014年11月09日 15:23
  • 2359

正则表达式简介及在C++11中的简单使用

正则表达式简介及在C++11中的简单使用
  • fengbingchun
  • fengbingchun
  • 2017年02月02日 13:41
  • 7525

正则表达式的四种功能

正则表达式主要是针对字符串进行操作,可以简化对字符串的复杂操作,其主要功能有匹配、切割、替换、获取。 一、匹配 检查字符串是否符合正则表达式中的规则,有一次不匹配,则返回false。如: Str...
  • tanpeng199134
  • tanpeng199134
  • 2016年09月18日 08:19
  • 1836

正则表达式学习1-语法(^$+?*[]{})

.正则表达式基本语法 ^的用法: ^表示表达式验证的开始,要验证的字符串完整的匹配^后面的内容。比如: ^567     匹配“567”+str; $表示表达式验证的结束,要验证的字符串完整的匹配%...
  • atares0223
  • atares0223
  • 2015年12月17日 10:05
  • 847
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:正则表达式
举报原因:
原因补充:

(最多只允许输入30个字)