2012-02-15 7 views
0

を継続していない:正規表現は、私はこのようないくつかのBBCコードを解析しようとしている

[item=1]a[/item] 
[item=2]b[/item] 
[item=3]c[/item] 

私は、最初のアイテムを取得することができるんだけど、私は、第2および第3のを取得することはできません。私は各項目をつかみ、それをリンクに変換しようとしています。ここで私はつもりだ結果だ:

<a href="#1">a</a> 
<a href="#2">b</a> 
<a href="#3">c</a> 

は、ここで私がやっているものです:

/\[item=(\d+)\](.*?)\[\/item\]/ 

私を与える:

["[item=1]a[/item]", "1", "a"] 

は私が間違って何をしているのですか?あなたの表現に「グローバル」オプションを追加すること

+0

です。 – stema

答えて

2

てみ

/\[item=(\d+)\](.*?)\[\/item\]/gi 

それべきほとんどの正規表現の実装上の仕事が、あなたの使用している(あるいは、少なくとも、あなたがどのような言語を中にプログラミングされている1つを提供する場合)、私はそれを確認することができます。

さらに、大文字小文字を区別しないオプションを追加してください。ITEMも一致します。さらにfutherノートで

:ここでは何が間違ってやっていることは、あなたが使用している言語に依存し、あなたが私たちにその言語を教えていないworking example

+0

すばらしい答えだけでなく、あなたが含まれている驚くべきプログラムも、これを100万回も+1することができれば幸いです。 – LordZardeck

+1

お寄せいただきありがとうございます。さらにご不明な点がございましたら、使用している_programming language_と、現在行っている_how_のサンプルコードを必ず含めてください。 –

+0

ああ、申し訳ありません。正規表現は正規表現なので、言語は問題ではないと私は考えましたか? – LordZardeck

関連する問題