[英]Parse string with regex
我有一個字符串需要解析。 問題在於字符串的某些部分並不總是相同的。
a3:S8:[gmpage] S17:Head GM NecrocideS12:test [15158]
前18個字符始終是相同的,因此我可以輕松地將這些String.Substring()
取出。
我的問題是字符S12:
並非總是S12:
很容易是S26:
-因此我不能在其上使用簡單的String.Replace()
。 我需要將這3個字符替換為:
我該如何使用正則表達式呢? 謝謝。
嘗試這個:
string input = "a3:S8:[gmpage]S17:Head GM NecrocideS12:test [15158]";
string output = Regex.Replace(myString, "NecrocideS\d\d:", "Necrocide:");
怎么樣:
Regex reg = new Regex(@"\A(?<before>a3:S8:\[gmpage\])(?<delete>.{3})(?<after>:Head GM NecrocideS12:test \[15158\])\Z");
string input = @"a3:S8:[gmpage]S26:Head GM NecrocideS12:test [15158]";
string output = reg.Replace(input, "${before}${after}");
這將用“”替換S26
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.