gpt4 book ai didi

php - 用 preg_match() 匹配括号

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:03:52 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Regex for checking if a string has mismatched parentheses?

我正在尝试编写一个正则表达式来仅匹配一串数字,可选地括在括号中(正则表达式还必须检查括号是否正确关闭,即它们是否存在于 pars 中)。所以所有这些都应该被正则表达式认为是有效的:1234567123(45​​)6(123)(456)

我想出了这个使用条件模式(注意我使用空格所以需要 x 修饰符来让它忽略空格):

$val = "(123)";
$regex = "^( (\()? [0-9]+ (?(2)\)) )+$";
$ret = preg_match("/{$regex}/x", $val, $matches);

然而,尽管它正确匹配了上面的“(123)”,它也匹配了下面它不应该匹配的:“(123)45)”(第二个数字只有右括号)

有人可以帮忙吗?

注意:不允许嵌套括号

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