この質問には一致するものが見つかりませんでしたので、重複している場合は事前に謝ります。テンプレートを考える .NET Regex.Replace()を使用して式を複数回置き換える
:<<FirstName>> <<FirstName>>
私は両方に一致する必要があり、単一の正規表現を使用して'<<>>'
年代の間に両方の文字列を置換します。
次のコードは、私が期待していように動作していないよう:
[Test]
public void ShouldReplaceMultiple()
{
var pattern = "<<.*FirstName.*>>";
var template = "<<FirstName>> <<FirstName>>";
var replaceWith = "FOO";
var regex = new Regex(pattern);
Assert.AreEqual("FOO FOO", regex.Replace(template, replaceWith));
}
次のようにテストの出力は次のとおりです。
Expected string length 7 but was 3. Strings differ at index 3.
Expected: "FOO FOO"
But was: "FOO"
--------------^
私は、なぜ両方を理解していません文字列は置き換えられませんか?
<< FirstName sdf >>はマットですあなたのパターンでうかがえます。 –
@ M.S。 OPごとに: - '' <<> ''の間に両方の文字列を置き換えたい。一つの正規表現を使用する '..また、OPはパターンで '。*'を使用している – rock321987