微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从php正则表达式提取匹配

在perl正则表达式中,我们可以提取匹配的变量,如下所示.
# extract hours,minutes,seconds
   $time =~ /(\d\d):(\d\d):(\d\d)/; # match hh:mm:ss format
   $hours = $1;
   $minutes = $2;
   $seconds = $3;

PHP中怎么做?

$subject = "E:contact@customer.com I:100955";
$pattern = "/^E:/";
if (preg_match($pattern,$subject)) {
    echo "Yes,A Match";
}

如何从那里提取电子邮件? (我们可以爆炸它得到它…但是想要一种通过正则表达式直接获取它的方法)?

尝试使用preg_match的命名子模式语法:
<?PHP

$str = 'foobar: 2008';

// Works in PHP 5.2.2 and later.
preg_match('/(?<name>\w+): (?<digit>\d+)/',$str,$matches);

// Before PHP 5.2.2,use this:
// preg_match('/(?P<name>\w+): (?P<digit>\d+)/',$matches);

print_r($matches);

?>

输出

Array (
     [0] => foobar: 2008
     [name] => foobar
     [1] => foobar
     [digit] => 2008
     [2] => 2008 )

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐