我需要正则表达式(c#)将字符串拆分为1或多个子字符串 不规则的分隔符,例如:
您好,[1]请帮助[1]我解决[1]正则表达式问题[1],谢谢。
分成5个数学:
答案 0 :(得分:5)
这里不需要正则表达式。使用String.Split:
input.Split(new []{ "[1]" }, StringSplitOptions.RemoveEmptyEntries)
答案 1 :(得分:2)
string input = "Hello ,[1]Please Help[1]me resolving this[1]regex issue[1], Thank You.";
var parts = Regex.Matches(input, @"(.+?)(\[1\]|$)").Cast<Match>()
.Select(m => m.Groups[1])
.Select(m => new { m.Index, m.Length, m.Value })
.ToList();
答案 2 :(得分:0)
而不是字符串,您可以使用如下所述的拆分功能:
string data = "Hello ,[1]Please Help[1]me resolving this[1]regex issue[1], Thank You.";
var arrayData = data.Split(new string[] { "[1]" }, StringSplitOptions.None);
并使用正则表达式:
string data = "Hello ,[1]Please Help[1]me resolving this[1]regex issue[1], Thank You.";
string[] substrings = Regex.Split(data, @"\[1\]");