C# 用于分析字符串的正则表达式
我有这样一个字符串“[[1,2,3,4],sample,test:[abc,acd,12],1000]”,我需要将这个字符串拆分为如下内容C# 用于分析字符串的正则表达式,c#,regex,C#,Regex,我有这样一个字符串“[[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 = Reg
[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
[^,]*?\[\s\s]*?\][^,]*?\[^,]+
我不理解你的模式。是否要使用[
和]
进行拆分?如果是这样,为什么1000
应该作为结果?为什么nsregularexpression
tag?@SonerGönül感谢您的回复,1000也在一个方括号内,“我需要”不是问题。显示您尝试过的内容和失败的内容。字符串的开头和结尾是否真的包含[]
?这个问题很有趣,但表达得不好。问题是由[and]表示的集合的“递归”结构。