2012-05-26 55 views
-4

我怎麼能寫一個while循環提到以下(僞代碼)的索引:While循環現有

While the index of "blahblah" in string 1 exists 

do this 
+1

您的psuedocode幾乎是真正的C#。爲什麼不學習如何在C#中自己寫這個? –

回答

3
while(string1.Contains("blahblah")) { 
    // do this 
} 

僞編譯成C#成功。 0個錯誤,0個警告。所用時間:0:00:01.860。

+1

有趣,這與'if(string1.Contains(「blahblah」))while(true){DoThis();}'非常相似,並永遠循環... –

+1

@ agent-j:如果'string1'被修改'DoThis()'。 – Ryan

+0

Downvote有理由嗎? – Ryan

0
var string1 = "blahblah blahblah blahblah blahblah "; 
    int pos = -1; 
    while (0 >= (pos = string1.IndexOf("blahblah", pos + 1))) 
    { 
    // do this. 
    } 
+1

請注意,即使string1不包含任何blahblahs,它總是至少執行一次。另外,我認爲你正在做出關於OP所需的一些假設,我從問題中得不到真正的答案。這看起來更像是「爲string1中的每個blahblah執行一次」。也許這是正確的。 – Blorgbeard

+0

@Blorgbeard糟糕..我引入了一個錯誤,試圖讓以前的代碼更優雅。謝謝...修正。 –