正则表达式适用于http://gskinner.com/RegExr/但不适用于preg_match

时间:2013-10-02 22:04:41

标签: php regex

preg_match( '/[a-z1-9]{2,5}-\d(\.\d)?/', "example.com - ABC-1.0", $match);

这是http://gskinner.com/RegExr/的工作。我在那里得到了预期的比赛 - 它匹配“ABC-1.0”。但不使用preg_match。匹配数组为空。

3 个答案:

答案 0 :(得分:3)

You need to use delimiters when using PCRE functions。您还需要正则表达式不区分大小写。

preg_match('/[a-z1-9]{2,5}-\d(\.\d)?/i'

答案 1 :(得分:0)

您可以使用修饰符组在正则表达式中添加不区分大小写 另请注意,组1是可选的,因此如果找不到.number组,则1将为空。

/(?i)[a-z1-9]{2,5}-\d(\.\d)?/

答案 2 :(得分:0)

如果您知道ABC部分应始终与大写字母匹配,则可以使用[A-Z1-9]

将其设为明确

当谈到正则表达式时,最好是明确而不是模糊。