什么是正则表达式?

5个月前 (10-15 10:07)阅读3回复0
dyyh
dyyh
  • 管理员
  • 注册排名7
  • 经验值132160
  • 级别管理员
  • 主题26432
  • 回复0
楼主

  正则表达式是查找和替代文本形式的简洁和灵敏的暗示法。VisualStudio中利用的正则表达式是VisualC++6。0中利用的、具有简化语法的表达式的超集。在“查找”、“在文件中查找”或“在文件中替代”对话框中,可利用下列正则表达式来改良和扩展搜刮。

  留意在将下列任何表达式用做搜刮前提的一部门之前,必需在“查找”、“在文件中查找”和“在文件中替代”对话框中选择“利用”复选框。可利用下列表达式婚配搜刮字符串中的字符或数字:表达式语法申明任一字符。婚配除换行符外的任何一个字符。最多0项或更多*婚配前面表达式的0个或更多搜刮项。

  最多一项或更多+婚配前面表达式的至少一个搜刮项。起码0项或更多@婚配前面表达式的0个或更多搜刮项,婚配尽可能少的字符。起码一项或更多#婚配前面表达式的一个或更多搜刮项,婚配尽可能少的字符。反复n次^n婚配前面表达式的n个搜刮项。例如,[0-9]^4婚配肆意4位数字的序列。

  字符集[]婚配[]内的任何一个字符。要指定字符的范畴,请列出由短划线(-)分隔的起始字符和完毕字符,如[a-z]中所示。不在字符集中的字符[^。。。]婚配跟在^之后的不在字符集中的任何字符。行首^将婚配定位到行首。行尾$将婚配定位到行尾。词首仅当词在文本中的此位置完毕时才婚配。

  分组()将子表达式分组。或|婚配OR符号(|)之前或之后的表达式。)。最常用在分组中。例如,(sponge|mud)bath婚配“spongebath”和“mudbath”。转义符\婚配跟在反斜杠(\)后的字符。那使您能够查找在正则表达式暗示法中利用的字符,如{和^。

  例如,\^搜刮^字符。带标识表记标帜的表达式{}标识表记标帜括号内的表达式所婚配的文本。第n个带标识表记标帜的文本\n在“查找”或“替代”表达式中,指示第n个带标识表记标帜的表达式所婚配的文本,此中n是从1至9的数字。在“替代”表达式中,\0插入整个婚配的文本。右对齐字段\(w,n)在“替代”表达式中,将字段中第n个带标识表记标帜的表达式右对齐至少w字符宽。

  左对齐字段\(-w,n)在“替代”表达式中,将字段中第n个带标识表记标帜的表达式左对齐至少w字符宽。制止婚配~(X)当X呈现在表达式中的此位置时制止婚配。例如,real~(ity)婚配“realty”和“really”中的“real”,而不婚配“reality”中的“real”。

  字母数字字符:a婚配表达式([a-zA-Z0-9])。字母字符:c婚配表达式([a-zA-Z])。十进造数:d婚配表达式([0-9])。十六进造数:h婚配表达式([0-9a-fA-F]+)。标识符:i婚配表达式([a-zA-Z_$][a-zA-Z0-9_$]*)。

  有理数:n婚配表达式(([0-9]+。[0-9]*)|([0-9]*。[0-9]+)|([0-9]+))。带引号的字符串:q婚配表达式(("[^"]*")|('[^']*'))字母字符串:w婚配表达式([a-zA-Z]+)十进造整数:z婚配表达式([0-9]+)。

  转义符\eUnicodeU+001B。Bell\gUnicodeU+0007。退格符\hUnicodeU+0008。换行符\n婚配与平台无关的换行符。在“替代”表达式中,插入换行符。造表符\t婚配造表符,UnicodeU+0009。Unicode字符\x####或\u####婚配Unicode值给定的字符,此中####是十六进造数。

  能够用ISO10646代码点或两个供给代办署理项对的值的Unicode代码点指定根本多语种平面(即一个代办署理项)外的字符。下表列出按尺度Unicode字符属性停止婚配的语法。两个字母的缩写词与Unicode字符属性数据库中所列的一样。可将那些指定为字符集的一部门。

  例如,表达式[:Nd:Nl:No]婚配任何品种的数字。表达式语法申明大写字母:Lu婚配任何一个大写字母。例如,:Luhe婚配“The”但不婚配“the”。小写字母:Ll婚配任何一个小写字母。例如,:Llhe婚配“the”但不婚配“The”。词首大写字母:Lt婚配将大写字母和小写字母连系的字符,例如,Nj和Dz。

  润色符字母:Lm婚配字母或标点符号,例如逗号、穿插重音符和双撇号,用于暗示对前一字母的润色。其他字母:Lo婚配其他字母,如哥特体字母ahsa。十进造数:Nd婚配十进造数(如0-9)和它们的双字节等效数。字母数字:Nl婚配字母数字,例如罗马数字和表意数字零。

  其他数字:No婚配其他数字,如旧斜体数字一。起头标点符号:Ps婚配起头标点符号,例如左方括号和左大括号。完毕标点符号:Pe婚配完毕标点符号,例如右方括号和右大括号。左引号:Pi婚配左双引号。右引号:Pf婚配单引号和右双引号。破折号:Pd婚配破折号标识表记标帜。

  毗连符号:Pc婚配下划线标识表记标帜。其他标点符号:Po婚配逗号(,)、?、"、!、@、#、%、&、*、\、冒号(:)、分号(;)、'和/。空白分隔符:Zs婚配空白。行分隔符:Zl婚配Unicode字符U+2028。段落分隔符:Zp婚配Unicode字符U+2029。

  无间隔标识表记标帜:Mn婚配无间隔标识表记标帜。组合标识表记标帜:Mc婚配组合标识表记标帜。封锁标识表记标帜:Me婚配封锁标识表记标帜。数学符号:Sm婚配+、=、~、|、。货币符号:Sc婚配$和其他货币符号。润色符号:Sk婚配润色符号,如顿挫音、抑音符号和长音符号。其他符号:So婚配其他符号,如版权符号、段落标识表记标帜和度数符号。

  其他控造:Cc婚配行尾。其他格局:Cf格局化控造字符,例如双向控造字符。代办署理项:Cs婚配代办署理项对的一半。其他私用:Co婚配私用区域的任何字符。其他未分配的字符:Cn婚配未映射到Unicode字符的字符。除尺度Unicode字符属性外,还能够指定下列附加属性。

  可将那些属性指定为字符集的一部门。表达式语法申明 婚配任何一个字符。例如,:Alhe婚配“The”、“then”、“reached”等单词。数字:Nu婚配任何一个数或数字。标点符号:Pu婚配任何一个标点符号,如?、@、'等等。空白:Wh婚配所有类型的空格,包罗印刷和表意文字的空格。

   婚配诸如阿拉伯文和希伯来文那类从右向左书写的字符。朝鲜文:Ha婚配朝鲜文和组合朝鲜文字母。平假名:Hi婚配平假名字符。片假名:Ka婚配片假名字符。表意文字/汉字/日文汉字:Id婚配表意文字字符,如汉字和日文汉字。

0
回帖

什么是正则表达式? 期待您的回复!

取消