#46890 [Com]: Regex works in perl, not with preg_match
| From: | php at degoulet dot net | Date: | Thu, 18 Dec 2008 08:50:09 +0000 |
| Subject: | #46890 [Com]: Regex works in perl, not with preg_match | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-132125@lists.php.net to get a copy of this message | ||
ID: 46890
Comment by: php at degoulet dot net
Reported By: gohanman at gmail dot com
Status: Open
Bug Type: PCRE related
Operating System: CentOS
PHP Version: 5.2.8
New Comment:
[root@pix root]# cat a.php
<?php
$pattern = "/(\w\w\w) (\d+) (\d\d\d\d) (\d+):(\d\d)(\w)M/";
$input = "Dec 17 2008 2:23PM";
$rv = preg_match($pattern, $input, $groups);
echo var_dump($rv);
?>
[root@pix root]# php -v
PHP 5.2.8 (cli) (built: Dec 17 2008 16:18:21)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
[root@pix root]# php a.php
int(1)
Previous Comments:
------------------------------------------------------------------------
[2008-12-17 20:51:06] gohanman at gmail dot com
Description:
------------
I'm having a preg_match function fail periodically. I finally found a
specific input string that fails in PHP but works fine in Perl. I'm at a
loss why.
Reproduce code:
---------------
$pattern = "/(\w\w\w) (\d+) (\d\d\d\d) (\d+):(\d\d)(\w)M/";
$input = "Dec 17 2008 2:23PM";
$rv = preg_match($pattern, $input, $groups);
echo var_dump($rv);
Expected result:
----------------
A non-zero result indicating the pattern matched.
Actual result:
--------------
Zero.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=46890&edit=1