2013-04-09 19 views
1

替換字符串我這裏有這個字符串C#ASP.NET註冊替換...用另一個字符串

string Thing1 = "12340-TTT"; 

string Thing2 = "®" 

我期待使用REG更換到TTT&reg取代。

我被告知使用reg替換它並不重要,如果它的大寫或小寫。

我該怎麼做呢?

+0

是「TTT」總是要「TTT」? – zimdanen 2013-04-09 20:56:27

回答

2

試試這個:

string one = "1234-TTT"; 

    string pattern = "TTT"; 
    Regex reg = new Regex(pattern); 
    string two = "&reg"; 
    string result = reg.Replace(one, two); 
    Console.WriteLine(result); 

應該給你想要的結果。而僅僅是一個良好的閱讀,如果你曾經需要一些更復雜的正則表達式:http://msdn.microsoft.com/en-us/library/vstudio/xwewhkd1.aspx

1

糾正我,如果我錯了,但我認爲它與替換像這樣的變量字符串相同: string Thing1 =「12340-TTT」;

string Thing2 = Regex.Replace(Thing1 , "®", "anyString"); 

得到它從這裏:

http://www.dotnetperls.com/regex-replace

歡呼:)

+0

爲什麼downvote這個沒有解釋? – 2013-04-09 20:58:48

+0

@pinoy_ISF你試過運行答案嗎?一句話答案至少應該是正確的。 – I4V 2013-04-09 21:08:50

3
string input = "12340-TTT"; 
string output = Regex.Replace(input, "TTT", "&reg"); 

// Write the output. 
Console.WriteLine(input); 
Console.WriteLine(output); 
Console.ReadLine(); 

這應該做的伎倆。您在字符串中找到「TTT」並將其替換爲「& reg」。

0

對於這一點,你可以使用Regex.Replace方法(文檔here

有幾個重載版本,但最直接一個因爲這是Regex.Replace(字符串輸入,字符串regexPattern,字符串replacementString)版本:

string Thing1 = "12340-TTT"; 
string Thing2 = "®"; 

string newString = System.Text.RegularExpressions.Regex.Replace(Thing1, "[Tt]{3}", Thing2); 

如果你不熟悉正則表達式,該[Tt]定義特定字符組(任何與指定的字符匹配的字符)和{3}僅表示它必須出現3次。所以,這會爲3個T的(例如,TTT,TTT,TTT,TTT等)

字符串大小寫不敏感尋求更基本的正則表達式的語法,你可以看看這裏:http://www.regular-expressions.info/reference.html

0

此外,RegexOptions之間可以傳遞給正則表達式還有就是IGNORECASE使其不區分大小寫:

string Thing1 = "12340-TTT"; 
string Thing2 = "®" 
var regex = new Regex("TTT", RegexOptions.IgnoreCase); 
var newSentence = regex.Replace(Thing1 , Thing2 ); 
相關問題