针对特定正则表达式请求的说明

时间:2013-11-07 10:42:02

标签: php regex

我有一个问题理解“+”符号。

以下是我的例子:

$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>";
}

所以基本上这完全有效,但我不明白“+”号的工作。如果我将其删除,则无效。

3 个答案:

答案 0 :(得分:3)

正则表达式中的

+匹配前面的组OR模式中的一个或多个。

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

Read more about regular expressions

答案 1 :(得分:2)

+等于{1,},表示 1或更多

答案 2 :(得分:1)

+表示至少出现一次或多次表达式。

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