如何在 php 中查找两个分隔符之间的所有子字符串


How to find all substrings between two delimiters in php?

例如,假设有一个字符串

"var name=cat; *bunch of random strings* var name=dog; *bunch of random strings* var name=cow; *bunch of random strings*"

我想解析这个字符串并找到两个分隔符"name="和";"之间的所有字符串。所以,我想提取猫、狗和牛这两个词,并将它们放在一个数组中。知道我应该怎么做吗?

我不知道爆炸能解决问题,但这似乎是:

$string = "var name=cat; *bunch of random strings* var name=dog;*bunch of random strings*var name=cow;*bunch of random strings*";
preg_match_all('/name=([^;]+)/', $string, $matches);
print_r($matches[1]);

或者,作为一个函数:

function wizbangStringParser ($string) {
    preg_match_all('/name=([^;]+)/', $string, $matches);
    return $matches[1];
}

爆炸函数应该对您有所帮助。