1

次のような既存のコードがあります。

[tag:cb cbid="12345" cbwidth="200" cbclassname="calloutbox" cbposition="left"] Lorem ipsum dolor sit amet, consectetur adipiscing elit.
[tag:cb cbid="123" cbwidth="200" cbclass="calloutbox2" cbposition="left"] Suspendisse eleifend enim a magna pretium porttitor.

[tag:cb]これらに一致し、オプションのパラメーターを取り、Htmlタグを使用して文字列を書き換えるVB.Netグローバル関数を作成する必要があります。

<div id="12345" width="200" class="calloutbox" position="left">content (based on id)</div>

どんな助けでも大歓迎です。ありがとう。

4

1 に答える 1

1

スタートは次のとおりです。

^\[tag:cb([^\]]*)\](.*)$

次に、capturegroup1および2を使用して新しい文字列を作成します。

<div$1>$2</div>

これにより、次のようなものが生成されます。

<div cbid="12345" cbwidth="200" cbclassname="calloutbox" cbposition="left"> Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div>
<div cbid="123" cbwidth="200" cbclass="calloutbox2" cbposition="left"> Suspendisse eleifend enim a magna pretium porttitor.</div>

cbid="123"問題は、の代わりにのような属性がまだ残っていることですid="123"。できれば、別の正規表現を実行してcb([^=]*)、capturegroup1のすべてのオカレンスを置き換えて置き換えます。

次のように出力されます。

<div id="12345" width="200" classname="calloutbox" position="left"> Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div>
<div id="123" width="200" class="calloutbox2" position="left"> Suspendisse eleifend enim a magna pretium porttitor.</div>

あなたが今しなければならないのは、VB.Netにそれを実装することです:)

ここで実際の最初の部分を見ることができます:http://regexr.com?2vbkq
そしてここで2番目の部分:http: //regexr.com? 2vbl3

于 2011-11-30T20:40:30.223 に答える