gpt4 book ai didi

php preg_match() 多种模式

转载 作者:行者123 更新时间:2023-12-04 05:18:53 29 4
gpt4 key购买 nike

在多个模式的情况下,可以在相同的数组索引下返回 preg_match 的结果。我的意思是我有以下 preg_match 什么正在检查不同子字符串( '&q''?q''&keywords' )上的出现。

preg_match('/&q=(.+?)(&|$)|\?q=(.+?)(\&|$)|\&keywords=(.+?)(\&|$)/', urldecode($test_string), $matches); 

我想查看 $matches[1] 下的所有事件可以排除以下 if声明。
if($matches){   
if ($matches[1] != ''){
$query_p = mysql_escape_string($matches[1]);
} elseif ($matches[3] != ''){
$query_p = mysql_escape_string($matches[3]);
} elseif($matches[5] != ''){
$query_p = mysql_escape_string($matches[5]);
}
}

最佳答案

简化您的正则表达式并将所有非意图捕获组转换为正则表达式中的非捕获组,如下所示:

/[?&](?:q|keywords)=([^&]+)(?:&|$)/

或者 使用 parse_str函数来解析查询字符串。

关于php preg_match() 多种模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13910929/

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