gpt4 book ai didi

PHP preg_match_all 同一行

转载 作者:行者123 更新时间:2023-12-02 12:28:53 27 4
gpt4 key购买 nike

在使用正则表达式时遇到问题(它们不是我的强项)。我试图匹配 {{ 和 }} 之间的所有字符串,但如果一组括号出现在同一行上,则会将其视为单个匹配...示例:

$string = "
Hello, kind sir
{{SHOULD_MATCH1}} {{SHOULD_MATCH2}}
welcome to
{{SHOULD_MATCH3}}
";

preg_match_all("/{{(.*)}}/", $string, $matches);

var_dump($matches); // returns arrays with 2 results instead of 3

返回:

array(2) {
[0]=>
array(2) {
[0]=>
string(35) "{{SHOULD_MATCH1}} {{SHOULD_MATCH2}}"
[1]=>
string(17) "{{SHOULD_MATCH3}}"
}
[1]=>
array(2) {
[0]=>
string(31) "SHOULD_MATCH1}} {{SHOULD_MATCH2"
[1]=>
string(13) "SHOULD_MATCH3"
}
}

有什么帮助吗?谢谢!

最佳答案

* 量词替换为 non-greedy形式*?.

这将使其尽可能少地匹配,同时仍允许表达式作为一个整体进行匹配,这与当前尽可能多地匹配的行为不同。

关于PHP preg_match_all 同一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14328215/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com