私はわたってるしき行くことができ正規表現マッチテキスト:[[テキスト]]
[[text is here]]
ほとんど何のライン上で何かにマッチするC#で働くだろう正規表現を記述しようとしています[[
および]]
。
唯一の規則は、[
または]
が表示された場合、 が1行になることはありません。例えば
[[ text ] is here ]] is a match
[[ text [ is ]here [ ]] is a match
[[ text ][ is [] ]] is a match
[[ text [[ is here]] is NOT a match.
私は時間のために私の頭を悩まてきたし、私が作ってみた最も近い
@"\[\[[^\[]+(\]\])+?"
上記
[[text is ] here]]
but not
[[text is [ here]]
一致しますですどのような助けや洞察力にも感謝します。
正規表現がここでマスタードをカットしようとしていますが、単純なパーサーは簡単に書くことができます。 –
私はマットに同意します。ディッチレグエックスがここにあります。それはかなり複雑になるでしょうし、あなたはそれを変更したいときはいつも、あなたの頭を新たに包み込む必要があります。文字列の各文字をループする単純なforループは、理解しやすく、変更しやすく、計算がはるかに高速です。 – jmacinnes