Re: [問題] 取出字串中括號內容
※ 引述《QuestionTwo (QuestionTwo)》之銘言:
: string str = "王小明(00001)";
: 想要單獨取出 00001 這個內容。
: 於是想到使用substring 看能不能達到
: 找了半天,後來使用了
: Regex reg = new Regex("[0-9]{1,}");
: string show = reg.Match(test).ToString();
: 這方法可以正確取出00001
: 但如果"王小明"變成"王小明2"就會取出"2"
: 如果寫成:Regex reg = new Regex("\([0-9]{1,}\)");
: 就會把不要的括號也取出來: (00001)
: 另外一個方法:
: char[] sep = {'(',')'};
: string[] str = test.Split(sep, StringSplitOptions.RemoveEmptyEntries);
: 然後取出str[1]就是00001
: 請問有沒有更好的方法 從符號"("開始取字串,到")"符號後結束?
土法煉鋼自己來比較快
static string GetString(string Input)
{
StringBuilder SB = new StringBuilder();
bool In = false;
foreach (char C in Input)
{
if (In)
{
if (C == ')')
{
In = false;
}
else
{
SB.Append(C);
}
}
else
{
if (C == '(')
{
In = true;
}
}
}
return SB.ToString();
}
--
我就是喜歡從後面來
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.140.110.202
推
10/03 11:52, , 1F
10/03 11:52, 1F
→
10/03 11:53, , 2F
10/03 11:53, 2F
→
10/03 15:49, , 3F
10/03 15:49, 3F
推
10/06 13:10, , 4F
10/06 13:10, 4F
→
10/06 18:07, , 5F
10/06 18:07, 5F
→
10/07 00:28, , 6F
10/07 00:28, 6F
→
10/07 21:11, , 7F
10/07 21:11, 7F
→
10/07 21:12, , 8F
10/07 21:12, 8F
→
10/07 21:13, , 9F
10/07 21:13, 9F
→
10/07 21:47, , 10F
10/07 21:47, 10F
討論串 (同標題文章)