PHP 正则表达式

 

if (preg_match('~[\x{4e00}-\x{9fa5}]+~u', $str)) {
        preg_match('/\[(.+?)\](\s|_)([a-zA-Z]+)/', $str, $pat_array);
        return $pat_array[count($pat_array) - 1];
}

 

命名变量

<?php

$str = <<<FOO
{{first.DATA}}
登录时间:{{keyword1.DATA}}
登录IP:{{keyword2.DATA}}
{{remark.DATA}}
FOO;

preg_match_all('/(?P<name>.+):(?P<digit>.+)/', $str, $matches);
var_dump($matches);

 

多行匹配注意:(.|\n)+?

<?php

$str = <<<FOO
{{first.DATA}}
登录时间:{{keyword1.DATA}}
登录IP:{{keyword2.DATA}}
{{remark.DATA}}
FOO;

preg_match_all('/\{\{first\.DATA\}\}(.|\n)+?\{\{remark.DATA\}\}/', $str, $matches);
var_dump($matches);

 

posted @ 2018-04-25 17:09  贝尔塔猫  阅读(144)  评论(0编辑  收藏  举报