0

我在理解“+”号时遇到问题。

这是我的例子:

$array = array("123 Main St.");

$match = preg_grep("%^\d{1,5}\s[A-Za-z.]+\s[A-Za-z.]{2,7}$%",$array);

foreach($match as $value) {
    echo "<pre>" .$value . "<br>";
}

所以基本上这完全有效,但我不明白“+”号的工作。如果我删除它,它就不起作用。

4

3 回答 3

3

+在正则表达式中是匹配一个或多个前面的组 OR 模式。

在您的示例中:[A-Za-z.]+将匹配 1 个或多个英文字母(不区分大小写)或文字点。

阅读有关正则表达式的更多信息

于 2013-11-07T10:44:14.217 回答
2

+等于{1,}含义1 或更多

于 2013-11-07T10:43:58.553 回答
1

+是指该表达至少出现一次或多次。

在您的情况下[A-Za-z.]+,意味着应至少有一个字母或一个点。

于 2013-11-07T10:44:01.423 回答