正则表达式
今天看到一个同事用很笨的方法删除一个文本文件的注释,感觉可以用正则表达式快速删除,于是学习了一点点的正则表达式,搞定!rnrn->rn,//ddd->null,//dd->null,//d->null,rn->n...(将文本文件中的换行替换,将注释去掉。) 字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符的序列。文本也就是文字,字符串。说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。
换行符就是'n',ASCII编码为10(十六进制0x0A)的字符。 b匹配这样的位置:它的前一个字符和后一个字符不全是(一个是,一个不是或不存在)w。 bhib .是另一个元字符,匹配除了换行符以外的任意字符。 *同样是元字符,不过它代表的不是字符,也不是位置,而是数量——它指定*前边的内容可以连续重复使用任意次以使整个表达式得到匹配。.*连在一起就意味着任意数量的不包含换行的字符。 0dd-dddddddd匹配这样的字符串:以0开头,然后是两个数字,然后是一个连字号“-”,最后是8个数字(也就是中国的电话号码。当然,这个例子只能匹配区号为3位的情形)。 这里的d是个新的元字符,匹配一位数字(0,或1,或2,或……)。为了避免那么多烦人的重复,我们也可以这样写这个表达式:0d{2}-d{8}。 这里d后面的{2}({8})的意思是前面d必须连续重复匹配2次(8次)。 比如s匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。w匹配字母或数字或下划线或汉字等。
元字符^(和数字6在同一个键位上的符号)和$都匹配一个位置,这和b有点类似。^匹配你要用来查找的字符串的开头,$匹配结尾。这两个代码在验证输入的内容时非常有用,比如一个网站如果要求你填写的QQ号必须为5位到12位数字时,可以使用:^d{5,12}$。
其实正则表达式精通还是花费一些时间的,我只是学了一点点皮毛而已,反正需要的时候再学吧。参考《正则表达式30分钟入门教程》(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |