2013年9月11日 星期三

[轉貼] 使用Regex.Split處理字串分割


命名空間:System.Text.RegularExpressions
程序集:System(在 system.dll 中)
Regex.Split 方法與  Split  方法類似,但後一種方法在由正則表達式而不是一組字符確定的分隔符處拆分字符串。如果指定 count,則至多將該字符串拆分為 count 個字符串(最後一個字符串包含該字符串其餘未拆分的部分);count 值為零則採用默認拆分行為(即盡可能多地進行拆分)。如果指定了 startat,則搜索第一個分隔符,以便從指定的位置開始執行操作(例如,這可以用於跳過前導空白)。
如果在 Regex.Split 表達式中使用捕獲組,則生成的字符串數組中會包含捕獲組。下面的示例會產生數組項「one」、「-」、「two」、「-」、「banana」。
Regex r = new Regex("(-)"); // Split on hyphens.
string[] s = r.Split("one-two-banana");
如果正則表達式可以匹配空字符串(例如 x*),則 Split 會將字符串拆分為由單個字符組成的字符串的數組,因為在每個位置都可以找到空字符串分隔符。
靜態 Split 方法等效於使用指定的正則表達式模式構造 Regex 對象並調用實例方法 Split。提供靜態方法是為了獨立、單獨地使用正則表達式,而不用顯式創建 Regex 對象。
示例1:
using System.Text.RegularExpressions;
string str="aaajsbbbjsccc";
string[] sArray=Regex.Split(str,"js",RegexOptions.IgnoreCase);
foreach (string i in sArray) Response.Write(i.ToString() + "<br>");

沒有留言:

張貼留言