正则表达式

<?php
/*
    正则表达式
    
    正则表达式是一种描述字符串结构的语法规则,是一个特定的格式化模式,可以匹配,替换,截取匹配的字串。对也用户来说
    
    可能以前没有接触过DOS,如果想匹配当前文件夹下所有的文本文件可以输入“dir *.txt”命令
    
    按Enter键后所有的文本文件就将会被列出来。这里的“*.txt”就可以理解为一个简单的正则表达式
    
    正则表达式的语法规则
    
        行定位符(^&$)
        
            行定位符就是用力啊描述字符串的边界。“^”表示开始
            “$“表示结尾
        
        单词定界符(\b,\B)
            
            \b 表示查找的自创为一个完整的单词
            
            例如:
                \bghost\b
                
            \B 表示它匹配的字串不能是个完整的单词,
            
            而是其它单词或字串的一部分:
            
            例如:
                \Bhos\B
                
        字符类([])
            
            正则表达式是区分大小写的,如果要忽略大小写可使用
            
            方括号表达式”[]“。只要匹配字符出现在方括号内,即可表示
            
            匹配成功。但是一个方括号只能匹配一个字符
            
                例如:
                    要匹配tm不区分大小写,那么应写成:
                    
                    [Tt][Mm]
                    
        选择字符(|)
            
            还有一种方法可以实现上面的匹配模式,就是使用选择字符(|)
            
                上面的例子可以写成[T|t][M|m]
                
        连接符(-)
        
            连字符可以表示字符的范围,如所有26位大小写字母可以表示成
            
            [a-zA-Z]
            
        排除字符([^])
        
            如排除上例所有字母
            
                [^a-zA-Z]
                
            该匹配的就是不以字母和下划线开头的变量名。
            
        限定符(?*+{n,m})
        
            当Google搜索只有一页时,不显示google标志,只有大于
            
            等于2是才显示google。说明字母o最少为两个,最多为20个
            
            那么正则表达式为:
            
                go{2,20}gle
                
        点好字符(.)
        
            如果遇到这样的题:写出一个5-10个以s开头,t结尾的单词,这是有
            
            很大难度的。如果题目并不告知第一个字母,而是中间任意一个
            
            难度会更大。
            
            在正则表达式中可以通过点字符来实现这样的匹配、(.)点字符可以
            
            匹配出换行符以外的任意一个字符。注意:是除了换行以外的任意字符
            
            。如匹配一S开头,t结尾,中间包含一个字母的单词格式如下:
            
                ^s.t$
                
            再举一个例子,匹配一个单词,它的第一个字母为r,第3个字母为s
            
            最后一个字母为t 能匹配该单词的正则表达式为:
                ^r.s.*t$
                
        转义字符(\)
        
            正则表达式中的转义字符(\)和php中的大同小异,都是将特殊字符(如“.”、“?”、“\”等)
            变为普通的字符。
            
        反斜线(\)
            
            除了可以做转义字符以外,反斜线还有其他一些功能
            
        括号字符(())
        
        反向引用
            反向引用,就是依靠子表达式的“记忆”功能来陪陪连续出现的
            字符串货字母。如匹配连雪的两个it,首先将单词it作为分组,然后
            在后面加上“\1”即可。格式为:
            (it)\1
            这是最简单的引用格式。如果要匹配的字串不固定,那么就将括号内的
            字串写成一个正则表达式。如果使用了多个分组,那么可以用“\1”、“\2”来表示每个分组
            (顺序是从左到右)如:
            ([a-z])([A-Z])\1\2
*/
?>

 

posted @ 2015-07-13 11:36  我辈年轻  阅读(159)  评论(0编辑  收藏  举报