//以验证 string str = "Left(姓名,1),Left(姓名,1) , Left (姓名,1) "; Regex re = new Regex(@"(?<!\([^\)]*),(?![^\(]*\))"); string[] sArray = re.Split(str); foreach (string s in sArray) { Console.WriteLine(s1); }
String str = @"Left (张三 ,1) , 男,18"; //tring str = "left(姓名,1),性别,年龄"; MatchCollection mac = Regex.Matches(str, @"\(.*\)"); string str1 = ""; foreach (Match m in mac) { str1 = m.Value; } str = System.Text.RegularExpressions.Regex.Replace(str, @"\(.*\)", "-"); str = System.Text.RegularExpressions.Regex.Replace(str, " ", ""); String[] my = str.Split(','); for (int i = 0; i < my.Length; i++) { Console.WriteLine(my[i].Replace("-",str1)); }
SQL语句 SELECT LEFT(姓名,1) AS 姓氏,性别,YEAR(出生日期) AS 出生年份, class AS 班级 FROM Student这句共有4个字段,其中可以出现任意空符。 如:" LEFT ( 姓名 , 1 ) AS 姓氏"现在我要取出每一个字段,并放入一个数组里,希望结果是(假设出现了红色部分的括号): array[0] = LEFT(姓名,1) AS 姓氏 array[1] = 性别 array[2] = YEAR(出生日期) AS 出生年份 array[3] = class AS 班级
我希望最终可以演变成: array[0] = LEFT([姓名],1) AS [姓氏] array[1] = [性别] array[2] = YEAR([出生日期]) AS [出生年份] array[3] = [class] AS [班级]当前在没有多余空格下,完全可以。可是一旦空格长了。就有点无能为力了。
如 :Left(姓名,1),Left(姓名,1) , Left (姓名,1)类似:Left(姓名 ,1)
这个不用考虑。
我想了半天,也想不出来。
String str = @"Left (张三 ,1) , 男,18";
String strNew = Regex.Replace(str, @"\s","");
Regex objRegex = new Regex(@"(?i)(left\([^,]+\,\d+\))\,([^,]+)\,([^,]+)");
//以验证
string str = "Left(姓名,1),Left(姓名,1) , Left (姓名,1) ";
Regex re = new Regex(@"(?<!\([^\)]*),(?![^\(]*\))");
string[] sArray = re.Split(str);
foreach (string s in sArray)
{
Console.WriteLine(s1);
}
//tring str = "left(姓名,1),性别,年龄";
MatchCollection mac = Regex.Matches(str, @"\(.*\)");
string str1 = "";
foreach (Match m in mac)
{
str1 = m.Value;
}
str = System.Text.RegularExpressions.Regex.Replace(str, @"\(.*\)", "-");
str = System.Text.RegularExpressions.Regex.Replace(str, " ", "");
String[] my = str.Split(',');
for (int i = 0; i < my.Length; i++)
{
Console.WriteLine(my[i].Replace("-",str1));
}
SELECT
LEFT(姓名,1) AS 姓氏,性别,YEAR(出生日期) AS 出生年份, class AS 班级
FROM
Student这句共有4个字段,其中可以出现任意空符。
如:" LEFT ( 姓名 , 1 ) AS 姓氏"现在我要取出每一个字段,并放入一个数组里,希望结果是(假设出现了红色部分的括号):
array[0] = LEFT(姓名,1) AS 姓氏
array[1] = 性别
array[2] = YEAR(出生日期) AS 出生年份
array[3] = class AS 班级
array[0] = LEFT([姓名],1) AS [姓氏]
array[1] = [性别]
array[2] = YEAR([出生日期]) AS [出生年份]
array[3] = [class] AS [班级]当前在没有多余空格下,完全可以。可是一旦空格长了。就有点无能为力了。