我認爲這將是一個非常愚蠢的問題,但是iam並沒有成功地用一個句子中的角落樹皮中的那些外來的東西來成功。如何獲得那些在字符串中的尖括號內的子字符串
var str = "MR. {Name} of {Department} department stood first in {Subjectname}"
我需要獲得子(如陣列)那些是角度brakets內
像strArray應包含{名稱,部門,主旨名稱}從上面給定的字符串
我認爲這將是一個非常愚蠢的問題,但是iam並沒有成功地用一個句子中的角落樹皮中的那些外來的東西來成功。如何獲得那些在字符串中的尖括號內的子字符串
var str = "MR. {Name} of {Department} department stood first in {Subjectname}"
我需要獲得子(如陣列)那些是角度brakets內
像strArray應包含{名稱,部門,主旨名稱}從上面給定的字符串
List<string> fields = new List<string>();
foreach(Match match in Regex.Matches(str, @"\{([^\}]*)\}")) {
fields.Add(match.Groups[1].Value);
}
或者用於格式化(填入空格) - 請參閱this example。
使用String.IndexOf(「{」)獲取第一個打開標記的索引和String.IndexOf(「}」)以獲取第一個關閉標記的索引。然後使用其他字符串函數來獲取它(子字符串,刪除等)...雖然仍然有標籤
注意在您的問題中使用var
,我會假定您使用的是.NET 3.5。
一行下面的代碼應該做的伎倆。
string[] result = Regex.Matches(str, @"\{([^\}]*)\}").Cast<Match>().Select(o => o.Value).ToArray();
非常有趣。 – 2009-10-14 07:23:04
是的,這是一個很少的努力 – CRice 2009-10-14 06:41:47