gpt4 book ai didi

php - 正则表达式使用逗号 (,) 分隔符拆分字符串,但如果逗号在大括号 {,} 中则忽略

转载 作者:可可西里 更新时间:2023-11-01 00:41:42 27 4
gpt4 key购买 nike

我需要一个正则表达式来使用逗号 (,) 分隔符拆分字符串,但在下面的示例中如果逗号位于花括号 {,} 中则忽略;

"asd", domain={"id"="test"}, names={"index"="user.all", "show"="user.view"}, test="test"

进入(应该是)

"asd"
domain={"id"="test"}
names={"index"="user.all", "show"="user.view"}
test="test"

问题:(不是这个)

"asd"
domain={"id"="test"}
names={"index"="user.all"
"show"="user.view"}
test="test"

试过这个,但它也会在大括号 {,}

内拆分逗号
\{[^}]*}|[^,]+

但我完全不知道这应该如何结束。任何帮助将不胜感激!

最佳答案

您可以使用以下正则表达式进行拆分

(,)(?=(?:[^}]|{[^{]*})*$)

所以使用preg_split你可以像这样做

echo preg_split('/(,)(?=(?:[^}]|{[^{]*})*$)/',$your_string);

Regex

关于php - 正则表达式使用逗号 (,) 分隔符拆分字符串,但如果逗号在大括号 {,} 中则忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34433573/

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