1

我这里有这个字符串

string Thing1 = "12340-TTT";

string Thing2 = "®"

我正在寻找使用 reg replace 替换TTTwith &reg

我被告知使用 reg replace 它的大小写无关紧要。

我该怎么做呢?

4

5 回答 5

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

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

这应该可以解决问题。您在字符串中找到“TTT”并将其替换为“®”。

于 2013-04-09T20:55:56.507 回答
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

于 2013-04-09T20:56:06.137 回答
1

如果我错了,请纠正我,但我认为这与在这样的变量上替换字符串相同:string Thing1 = "12340-TTT";

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

从这里得到它:

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

干杯:)

于 2013-04-09T20:52:23.403 回答
0

为此,您可以使用 Regex.Replace 方法(此处的文档)

有几个重载版本,但最直接的版本是 Regex.Replace(String input, String regexPattern, String 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

于 2013-04-09T21:05:08.223 回答
0

此外,在您可以传递给正则表达式的RegexOptions之间有 IgnoreCase 以使其不区分大小写:

string Thing1 = "12340-TTT";
string Thing2 = "®"
var regex = new Regex("TTT", RegexOptions.IgnoreCase );
var newSentence = regex.Replace( Thing1 , Thing2  );
于 2013-04-09T21:05:43.353 回答