我有一个字符串:
$str ="
- group1
- group2
- group3
";
此外,我有这个正则表达式:
/(\-\s\w+)\n(\-\s\w+)\n(\-\s\w+)/
如您所知,有三个捕获组:$1
、$2
和$3
。我手动创建了这些组。也就是说,如果我将以下内容附加到上面的字符串中:
- group4
- group5
那么这个正则表达式就无法匹配它们。
好的,我有一个常量模式:(\-\s\w+)
,我想在字符串中创建一个分离的捕获组来捕获匹配项的数量。以下是一些示例:
示例1:
$str="
- group 1
";
我需要一个正则表达式来获取所有由
$1
表示的字符串。
例子2:
$str="
- group 1
- group 2
";
我需要一个正则表达式,通过$1
给出字符串的第一行(- group 1
),并通过$2
给出第二行(- group 2
)。
好的,正如您在上面的示例中所看到的,字符串是动态的,但它遵循一个恒定的模式...现在我想知道如何根据字符串创建一个动态捕获组?
preg_match_all('/- .*/', $str, $matches);
- AbraCadaver