用于分析字符串的正则表达式

本文关键字:正则表达式 字符串 用于 | 更新日期: 2023-09-27 18:20:56

我有一个这样的字符串"[[1,2,3,4],sample,test:[abc,acd,12],1000]"我需要将这个字符串拆分为如下

[1,2,3,4] 
sample
test:[abc,acd,12]
1000

如何创建一个正则表达式来解析此字符串。

用于分析字符串的正则表达式

从输入字符串中删除前导[和尾随]符号,并根据[]括号内不存在的逗号拆分结果字符串。

string str = "[[1,2,3,4],sample,test:[abc,acd,12],1000]";
string remove = Regex.Replace(str, @"]$|^'[", "");
string[] lines = Regex.Split(remove, @",(?![^'[']]*'])");
foreach (string line in lines) {
Console.WriteLine(line);
}
  Console.ReadLine();
}

输出:

[1,2,3,4]
sample
test:[abc,acd,12]
1000

IDEONE

[^,]*?'[['s'S]*?'][^,]*?|[^,]+