2011-11-14 10 views
1

[DOT]、[COMMA]などの特別なトークンがあるとします。これらは文字列のどこかで発生する可能性があります。 いくつかの正規表現を構築して空の文字列に置き換え、周囲の空白の1つを破棄する必要がありますか?たとえば、 「Mr [DOT] Drubberが彼と彼の12 [DONG]を連れて行ったのは、「Drubber氏が彼と12人を連れてきた」となるはずです。 ので、このコードは動作しません:regexは任意の空白で置き換えます

string strToFix = "Mr[DOT] Drubber took his 12 [DONG] with him"; 
string templateWords = GetSpecialTokens(); // \[DOT\]|\[COMMA\] etc 
string wrongString = Regex.Replace(strToFix, templateWords, ""); 
//wrongString becomes "Mr Drubber took his 12 with him" 

それとも、このような正規表現replcaceを構築することはできませんか? ありがとうございます。

+0

両側にないエッジの場合、常に一方の端または他方の端に常に空白がありますか? – Nightfirecat

+0

良い点。場合によります。私は今も「私の[DING] [DONG] string」のような状況を考えます。 – Nickolodeon

答えて

0

これは?

resultString = Regex.Replace(subjectString, @"\[(DOT|DONG)\]", ""); 
関連する問題