2016-09-21 83 views
0

我有一個這樣的字符串:Regex.Replace串

"CASE WHEN TEST='rr' THEN 'aa', CASE WHEN TEST='ee' THEN 'ff', IF (a==a) THEN BC=0 IF (B==B) THEN BF=1" 

我不得不通過的String.Empty再更換,但只有在「IF」而不是之後「案例」來得到這樣的結果:

"CASE WHEN TEST='rr' THEN 'aa', CASE WHEN TEST='ee' THEN 'ff', IF (a==a) BC=0 IF (B==B) BF=1" 

我嘗試使用正則表達式,但我沒有得到正確的結果。有任何想法嗎?

+0

這絲毫不是一個明確的問題。 – ThePerplexedOne

+0

這是我看到的第一個問題,即使是間接的,也不能識別目標語言。 – Amy

+0

我不知道我是否應該回答你的意見。 –

回答

0

可以匹配這個...

(IF\s\([^)]+\)\s)THEN\s 

...並用反向引用您的第一個捕獲組,(即\1)更換呢?

Here's an example我建議。

+0

感謝這很好,正則表達式對我來說不是那麼容易 –

+0

聽起來很好。如果它解決了您的問題,您可以將答案標記爲正確。 – wpcarro