我有一个 sip.conf 文件,其中包含这样的数据:
#<COMPTE
[6007](template)
fullname = ggg
username = ggg
secret = nana
COMPTE>#
#<COMPTE
[6008](template)
fullname = dada
username = dada
secret = dada
COMPTE>#
我使用 java 创建了一个方法:
Matcher matcher = Pattern.compile("(?m)^#<COMPTE.*?COMPTE>#",Pattern.MULTILINE | Pattern.DOTALL).matcher(chaine);
while (matcher.find()) {
comptes=matcher.group();
}
我想要在 PHP 中实现类似的功能,我已经尝试了很多方法,但它似乎不起作用,有什么帮助吗?
最佳答案
我认为这就是您正在寻找的。p>
$chaine = <<<EOT
#<COMPTE
[6007](template)
fullname = ggg
username = ggg
secret = nana
COMPTE>#
#<COMPTE
[6008](template)
fullname = dada
username = dada
secret = dada
COMPTE>#
EOT;
$pattern = "/COMPTE(.*?)COMPTE/sm"; // s = dotall, m = multiline
preg_match_all($pattern, $chaine, $matches);
print_r($matches);
关于java - 在 PHP 上使用 RegEx 时遇到的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23859475/