为什么这个正则表达式匹配?

时间:2011-11-03 14:35:56

标签: php regex

echo preg_match("#/login#", "/login/val1-val2/dir2", $matches);

print_r($matches);

我明白了:

1
Array
(
    [0] => /login
)

字符串不等于,我怎么能改变我的正则表达不匹配?

由于

3 个答案:

答案 0 :(得分:5)

使用此:#^/login$#^$标记字符串的开头和结尾。当然,如果这是您的确切用例,您只需使用==来“匹配”字符串。

答案 1 :(得分:4)

如果要测试相等性,为什么不比较字符串呢?为什么你甚至为此使用正则表达式?

答案 2 :(得分:0)

正则表达式是匹配的,因为/login/login/val1-val2/dir2的子字符串。