gpt4 book ai didi

php - 无法理解 REGEX 中 * 和 + 量词之间的区别

转载 作者:行者123 更新时间:2023-12-04 21:59:38 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Difference between * and + regex

(7 个回答)


2年前关闭。




我是正则表达式的新手,正如我所研究的,* 匹配零个或多个,+ 匹配一个或多个,所以我开始测试这个:

<?php
preg_match("/a/", 'bbba',$m);
preg_match("/a*/", 'bbba',$o);
preg_match("/a+/", 'bbba',$p);
echo '<pre>';
var_dump($m);
var_dump($o);
var_dump($p);
echo '</pre>';
?>

但结果是 * 没有匹配任何东西并在字母 a 存在时返回空:
array(1) {
[0]=>
string(1) "a"
}
array(1) {
[0]=>
string(0) ""
}
array(1) {
[0]=>
string(1) "a"
}

所以我想念这里。

最佳答案

/a/匹配第一个 abbba/a*/匹配 0 个或多个 a人物。有 0 a字符串开头和第一个 b 之间的字符所以它在那里匹配。
/a+/匹配 1 个或多个 a字符,所以它匹配第一个 a特点

这里要注意的是,正则表达式将尽可能早地尝试匹配它正在检查的字符串。

关于php - 无法理解 REGEX 中 * 和 + 量词之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54399002/

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