gpt4 book ai didi

PHP正则表达式匹配

转载 作者:行者123 更新时间:2023-12-03 23:08:36 24 4
gpt4 key购买 nike

给定输入字符串“othertext ?.abc.de.fgh.i moretext”和模式'/\?(\.[a-zA-Z]*)*/' 我正在尝试使用函数 preg_match_all 来获取与元素 .abc.de.fgh.i 但仅匹配 ?.abc.de.fgh.i.i 。 (The test)

最佳答案

您可以使用 \G anchor

(?:\?|\G(?!^))\K\.[a-zA-Z]+

部分:

  • (?: 非捕获组
    • \? 匹配 ?
    • | 或者
    • \G(?!^) 在上一场比赛结束时断言位置,而不是在开始时
  • ) 关闭群组
  • \K\.[a-zA-Z]+ 忘记当前匹配的内容,并匹配 . 和 1+ 个字符 a-zA-Z<

Regex demo | Php demo

$re = '/(?:\?|\G(?!^))\K\.[a-zA-Z]+/';
$str = 'othertext ?.abc.de.fgh.i moretext';

preg_match_all($re, $str, $matches);
var_dump($matches[0]);

输出

array(4) {
[0]=>
string(4) ".abc"
[1]=>
string(3) ".de"
[2]=>
string(4) ".fgh"
[3]=>
string(2) ".i"
}

关于PHP正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61390421/

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