計算匹配字符串中的模式的令牌數的方法。計算匹配字符串中的模式的令牌數
標記是一個「$」後面跟着「$$」,「$」和「$$」之間可以有任意數量的字符。
如:"$123$$, $ab$$, $qqwe123$$
輸入字符串可以爲"$122$$dddd$1aasds$$"
。
對於上面的字符串,該方法的輸出應爲2。
編程語言可以C#或C++。
這裏是我想出了,但試圖找到最好的方式代碼:
static int CalculateTokenCount()
{
string s = "$ab$$ask$$$$123$$";
int tokenCount = 0;
bool foundOneDollar = false;
bool foundSecondDollar = false;
if (string.IsNullOrEmpty(s))
{
return tokenCount;
}
for (int i = 0, x = 0; i < s.Length; i++)
{
if (s[i] == '$' && !foundOneDollar)
{
foundOneDollar = true;
continue;
}
if (foundOneDollar)
{
if (s[i] == '$' && !foundSecondDollar)
{
foundSecondDollar = true;
continue;
}
}
if (foundSecondDollar)
{
if (s[i] == '$')
{
tokenCount++;
}
foundSecondDollar = false;
}
}
Console.WriteLine(tokenCount);
return tokenCount;
}
http://whathaveyoutried.com先讓你的努力來獲取計數。這不是Stackoverflow的_real問題,請閱讀[常見問題]和[問]幾次.. – 2013-03-23 13:32:52
優秀的問題。你有我的前進來解決它 – user93353 2013-03-23 13:57:04