我對編程真的很陌生,我剛開始學習C#的一些基礎知識。我只是試圖編寫一個方法來檢查一些特殊字符是否不包含在字符串中。我的結果是這樣的代碼:在字符串中獲取未使用的字符?
static string GetUnused(string s)
{
/*
* Propably will get confused if s contains '#' char... how2fix?
*/
char[] signs = { '!', '§', '$', '%', '&', '/', '(', ')', '=', '?' };
foreach (char c in s)
{
if (c == '!') signs[0] = '#';
if (c == '§') signs[1] = '#';
if (c == '$') signs[2] = '#';
if (c == '%') signs[3] = '#';
if (c == '&') signs[4] = '#';
if (c == '/') signs[5] = '#';
if (c == '(') signs[6] = '#';
if (c == ')') signs[7] = '#';
if (c == '=') signs[8] = '#';
if (c == '?') signs[9] = '#';
}
string ret = string.Empty;
foreach (char x in signs)
{
if (x == '#') ret += "";
else ret += x;
}
return ret;
,但我敢肯定這不是一個很好的解決我的問題...我如何在奶源更優雅的方式來解決這個問題? 謝謝你的答案。
您曾經考慮過String.Contains方法? https://msdn.microsoft.com/en-us/library/dy85x1sa.aspx – Mickey
也在最後一個foreach循環中:如果將其更改爲'if(x!='#')ret + = x;'那麼你將不需要else路徑。 – Mickey
也許把它帶到http://codereview.stackexchange.com/? – Euphoric