加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-13 22:49:59 所属栏目:百科 来源:网络整理
导读:1、很多单词里包含hi这两个连续的字符,比如him,history,high等等。用hi来查找的话,这里边的hi也会被找出来。如果要精确地查找hi这个单词的话,我们应该使用bhib。 2、b是正则表达式规定的一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着
1、很多单词里包含hi这两个连续的字符,比如him,history,high等等。用hi来查找的话,这里边的hi也会被找出来。如果要精确地查找hi这个单词的话,我们应该使用bhib。 2、b是正则表达式规定的一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格,标点符号或者换行来分隔的,但是b并不匹配这些单词分隔字符中的任何一个,它只匹配一个位置。 现在bhib.*bLucyb的意思就很明显了:先是一个单词hi,然后是任意个任意字符(但不能是换行),最后是Lucy这个单词。 0dd-dddddddd匹配这样的字符串:以0开头,然后是两个数字, 然后是一个连字号“-”,最后是8个数字(也就是中国的电话号码。 当然,这个例子只能匹配区号为3位的情形)。 3、这里的d是个新的元字符,匹配一位数字(0,或1,或2,或……)。 -不是元字符,只匹配它本身——连字符(或者减号,或者中横线,或者随你怎么称呼它)。 4、为了避免那么多烦人的重复,我们也可以这样写这个表达式:0d{2}-d{8}。 这里d后面的{2}({8})的意思是前面d必须连续重复匹配2次(8次)。 5、转义字符:如果你想查找元字符本身的话,比如你查找.,或者*,就出现了问题:你没办法指定它们,因为它们会被解释成别的意思。这时你就得使用来取消这些字符的特殊意义。因此,你应该使用.和*。当然,要查找本身,你也得用. 例如:deerchao.net匹配deerchao.net,C:Windows匹配C:Windows。 d+匹配1个或更多连续的数字。 这里的+是和*类似的元字符,不同的是*匹配重复任意次(可能是0次),而+则匹配重复1次或更多次。 6、元字符^(和数字6在同一个键位上的符号)和$都匹配一个位置,这和b有点类似。 ^匹配你要用来查找的字符串的开头,$匹配结尾。 这两个代码在验证输入的内容时非常有用, 比如一个网站如果要求你填写的QQ号必须为5位到12位数字时,可以使用:^d{5,12}$。 7、我们也可以轻松地指定一个字符范围, 像[0-9]代表的含意与d就是完全一致的:一位数字;同理[a-z0-9A-Z_]也完全等同于w(如果只考虑英文的话)。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读