私はとても頑張っていましたが、これまでに得たものですが、最終的にはうまくいかない!!コンマの後の正規表現
達成したいのは次のとおりです。 "辞書"機能に対処するためのpreg_replace_callback関数があります。
私は自分の「辞書」タグを使用します。
<[general,username]>
<[general,username,1]>
これは「辞書」私の関数を呼び出す必要があります。それはarargumentsだと機能は次のとおりです。dictionary($search,$section,$upper=null)
$search = filename
$section = array key
$upper = (int) 1 to 3
私のコールバック関数は、「辞書」タグからの値を持つ関数を呼び出します。
for <[general,username]> I need
- $search = general
- $section = username
- $upper = null
but for <[general,username,1]> I want
- $search = general
- $section = username
- $upper = 1
私は私の正規表現は常に2つの引数を一致させたい(検索・セクション)が、第三のオプションの引数を持っています。
私の正規表現:
/\<\[([^\[]+)\,([^\[]+)(\,[0-2])?\]\>/
が、これは正しく動作しません。私は<ため
[0] => <[general,username]>
[1] => general
[2] => username
を得る> <ため
[一般的な、ユーザー名] [一般的な、ユーザー名、1]>私は
[0] => <[general,username,1]>
[1] => general,username
[2] => 1
を取得するが、私は希望:私は、次のような結果を得ます
[0] => <[general,username,1]>
[1] => general
[2] => username
[3] => 1
何が間違っていますか?
この式では、t **(\、[0-2])?**、上の結果は間違っています= "、" –
Eder
私はその部分をより詳しく見ていたはずです。私はそれを編集します。ありがとう! – MVS