所以我一直在努力的這兩個問題的答案結合正面看:
C# split string but keep split chars\seperators
Regex to match multiple strings正則表達式匹配多個字符串背後
基本上我希望能夠分裂圍繞某些字符串並且在Regex.Split()
的輸出數組中也有分割字符串。以下是我迄今爲止嘗試:
// ** I'd also like to have UNION ALL but not sure how to add that
private const string CompoundSelectRegEx = @"(?<=[\b(UNION|INTERSECT|EXCEPT)\b])";
string sql = "SELECT TOP 5 * FROM Persons UNION SELECT TOP 5 * FROM Persons INTERSECT SELECT TOP 5 * FROM Persons EXCEPT SELECT TOP 5 * FROM Persons";
string[] strings = Regex.Split(sql, CompoundSelectRegEx);
的問題是,它開始像匹配E和ü單個字符,所以我得到的字符串數組不正確。
我也想圍繞UNION ALL進行匹配,但因爲那不僅僅是一個單詞而是一個字符串我不知道如何將它添加上面的正則表達式,所以如果有人能指出我在正確的方向,那太好了!
謝謝!
「except | union | intersect」 – 2011-05-25 15:42:06