1

<br />C# で正規表現を使用して、文字列の改行ごとにタグをコンパクトに挿入したいと考えています。これはできますか?現在、改行を次のものに置き換えることしかできません。

myString = Regex.Replace(myString, @"\r\n?|\n", "<br />");

これを変更して、一致したテキスト (つまり、\r\n\r、または\n) を置換に含めることはできますか?

明らかに、別の Match 変数で実行できますが、1 行で実行できるかどうかに興味があります。

4

3 に答える 3

2

MSDN には、.NET の正規表現置換マジック専用の別のページがあります。

最も一般的なアプローチは、何かをキャプチャし、キャプチャされたコンテンツを$n(nキャプチャされたグループ番号はどこにあるのか) で書き戻すことです$&

myString = Regex.Replace(myString, @"\r\n?|\n", "<br />$&");

これを頻繁に行う場合は、キャプチャを回避する方が少し効率的です。

于 2013-06-14T22:34:16.157 に答える