美文网首页
9.2.4 正则表达式中的原子2

9.2.4 正则表达式中的原子2

作者: 曹渊说创业 | 来源:发表于2016-12-19 08:37 被阅读37次

    9.2.4 正则表达式中的原子2

    原子是正则表达式的最基本的组成单元,而且在每个模式中最少要少包含一个原子。原子是由所有那些未显示指定为元字符的打印和非打印字符组成,具体分为5类。
    1. 普通字符作为原子: 如 az、AZ、0~9 等
    2. 一些特殊字符和转义后元字符作为原子:
    所有标点符号,但语句特殊意义的符号需要转义后才可作为原子,如:\” \’ * + ? . 等
    3. 一些非打印字符作为原子: 如:\f \n \r \t \v \cx
    4. 使用“通用字符类型”作为原子:如:\d \D \w \W \s \S。
    5. 自定义原子表([])作为原子:如:’/[apj]sp/’ ’/[^apj]sp/’

    01.png 02.png

    test.php

    <?php
    
    /*
     * 原子: 
     *
     *  1. 打印字符(a-z A-Z 0-9 !@#$%^&*()_+) 和非打印字符
     *
     *
     *
     *  \ 转义字符
     *
     *  一、 可以将有意义的字符转成没有意义的原子字符  (将有意义变成原子)
     *  二、 可以将没有意义的字符转成有意义的原子
    *   三、 a-z A-Z 0-9 _   所有没有意义的字符, 加上转义也没有意义的, \@ 都是可加可不加的
    *
    *
    *   2.  所有的数字, 所有的字, 所有的空白, 所有字母, 特殊符号
    *
    *
    *   \d     代表任意一个数字     [0-9]
    *   \D     代表任意一个非数字   [^0-9]
    *
    * 
    *   \w     代表任意一个字  a-z A-Z 0-9 _   [a-zA-Z_]
    *   \W     代表任意一个非字 除了 a-z A-Z 0-9 _之外的所有字符   [^a-zA-Z0-9_]
    *
    *
    *   \s   代表空白    [\t\n\f\v]
    *   \S   代表非空白 [^\t\n\f\v]
    *
    *
    *   3. 自己定义原子表
    *
    *   [13579]
    *   [^a-zA-Z]  -从哪到哪区间范围  ^除列表中的
    *
    *
    *   4 点(.)能代表所有的
     *
     */
        $str = "fdsaf3ds2af4dsaf8dsafdsa";
    
        
        $reg = '/[^a-zA-Z]/';
    
    
        if(preg_match($reg, $str, $arr) ) {
            echo "正则表达式 <b>{$reg}</b> 和字符串 <b>{$str}</b> 匹配成功!<br>";
            print_r($arr);
        
        } else {
            echo "没有匹配上<br>";
        }
    

    相关文章

      网友评论

          本文标题:9.2.4 正则表达式中的原子2

          本文链接:https://www.haomeiwen.com/subject/ypozmttx.html