2017-05-21 39 views
0

我似乎無法弄清楚我需要的正則表達式。我需要它的一部分與像"TNT"只要行不包含DONT_TRANSLATE正則表達式可以匹配這些條件

的AddItem(「TNT」,假,真,真,假)括號匹配; // DONT_TRANSLATE <不應該匹配

的AddItem( 「花」,FALSE,TRUE,TRUE,FALSE); <應與功能

它並不總是替換文本,這樣的東西,如

COUT < < 「文本需要翻譯」;

itemInfo + =「Text」; 還需要匹配正則表達式。

這是我現在,但它不能正常工作。

void TranslationReplace(string english, string chinese, ref string fullText) 
{ 
    Regex translationRegex = new Regex('"' + Regex.Escape(english) + "\"(?!DONT_TRANSLATE)", RegexOptions.Multiline); 
    fullText = translationRegex.Replace(fullText, "\"" + chinese + "\""); 
} 
+0

這是在.net中處理翻譯的完全錯誤方式。 –

+0

這是從另一個程序翻譯我的C++源代碼C#程序。它不適用於.NET中的翻譯。 – NVMESSD

回答

0

當你只需要引號之間的文本,那麼這將尋找它,並會忽略包含任何東西后,用// DONT_TRANSLATE任何線包括

".*"(?!.*\/\/DONT_TRANSLATE) 

RegexDemo

+0

它不會匹配所有情況。更新了我的帖子以提供更多信息。 – NVMESSD

+0

@NVMESSD我已經更新了我的答案 –