入力文字列内のカスタム文字のペアを一致させるための適切な正規表現を見つけようとしています。これらのカスタム文字は、対応する html タグに置き換えられます。
たとえば、入力文字列には、単語を太字で示すためにアンダースコアをペアで含めることができます。したがって、
次のように_Name_
出力されます<b>Name</b>
ただし、文字列に真のアンダースコアがある場合は、「ボールド」タグに置き換えることができないため、無視する必要があります。本物のアンダースコアの前には/
(もっと良い文字が見つかりませんでした。もう 1 つアンダースコアやハイフンなどを使用できます)。この本物のアンダースコアの 1 つまたはペアの出現は、正規表現で無視する必要があります。
これまでのところ、この正規表現を思いつくことができました:
var pattern = @"(?!/)_(.*?)(?!/)_";
ただし、以下の入力文字列では失敗します。
_Tom_Katy/_Richard/_/_Stephan_and many users
として出力します
<b>Tom</b>Katy/<b>Richard/_/</b>Stephan_and many users
前もって感謝します、広報