> php教程 > php手册 > 본문

php中preg

WBOY
풀어 주다: 2016-06-06 19:50:42
원래의
1728명이 탐색했습니다.

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 php中preg_match函数的使用方法: 语法: int preg_match ( string pattern, string subject [, array matches [, int flags]] ) 在 subject 字符串中搜索与 pattern 给出的正则表达式相匹配的内容. 如

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

    php中preg_match函数的使用方法:

    语法:

    int preg_match ( string pattern, string subject [, array matches [, int flags]] )

    在 subject 字符串中搜索与 pattern 给出的正则表达式相匹配的内容.

    如果提供了 matches,则其会被搜索的结果所填充.$matches[0] 将包含与整个模式匹配的文本,$matches[1] 将包含与第一个捕获的括号中的子模式所匹配的文本,以此类推.

    flags 可以是下列标记:

    PREG_OFFSET_CAPTURE

    如果设定本标记,对每个出现的匹配结果也同时返回其附属的字符串偏移量.注意这改变了返回的数组的值,使其中的每个单元也是一个数组,其中第一项为匹配字符串,第二项为其偏移量.本标记自 PHP 4.3.0 起可用.

    flags 参数自 PHP 4.3.0 起可用.

    preg_match() 返回 pattern 所匹配的次数.要么是 0 次(没有匹配)或 1 次,因为 preg_match() 在第一次匹配之后将停止搜索.preg_match_all() 则相反,会一直搜索到 subject 的结尾处.如果出错 preg_match() 返回 FALSE.

    提示: 如果只想查看一个字符串是否包含在另一个字符串中,不要用 preg_match().可以用 strpos() 或 strstr() 替代,要快得多.

    例1. 在文本中搜索“php”

   

    // 模式定界符后面的 “i” 表示不区分大小写字母的搜索

    if (preg_match (“/php/i”, “PHP is the web scripting language of choice.”)) {

    print “A match was found.”;

    } else {

    print “A match was not found.”;

    }

    ?>

    例2. 搜索单词“web”

   

    /* 模式中的 \b 表示单词的边界,因此只有独立的 “web” 单词会被匹配,

    * 而不会匹配例如 “webbing” 或 “cobweb” 中的一部分 */

    if (preg_match (“/\bweb\b/i”, “PHP is the web scripting language of choice.”)) {

    print “A match was found.”;

    } else {

    print “A match was not found.”;

    }

    if (preg_match (“/\bweb\b/i”, “PHP is the website scripting language of choice.”)) {

    print “A match was found.”;

    } else {

    print “A match was not found.”;

    }

    ?>

    例3. 从 URL 中取出域名

   

    // 从 URL 中取得主机名

    preg_match(“/^(http:\/\/)?([^\/]+)/i”,

    $host = $matches[2];

    // 从主机名中取得后面两段

    preg_match(“/[^\.\/]+\.[^\.\/]+$/”, $host, $matches);

    echo “domain name is: {$matches[0]}\n”;

    ?>

    输出:

    domain name is: php.net

    与之相似的函数还有preg_match_all,在此不作过多介绍.

php中preg

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿