0
私は異なるフィールドを捕獲するために、SQLクエリを一致させたい:必要PHPのするpreg_match SQL更新句パターン
update nabi set fjfhj where jjj;
table
からを必要columns
ここでナビを - ここfjfhjwhere
オプション - ここJJJ
は現在、私は持っている:
/^update\s+(?<table>[a-z_]+)\s+set(?<columns>.*?)(\s+where\s+(?<where>.*?))?;?$/si
私の問題がどこにあるかという句多分空!
ただしwhere句が正しく一致しません。 online exampleがあります。
不可能ですか?
あなたはこのパターンで見つけるために何をしようとしていますか?いくつかのサンプルを表示し、結果を必要とします。 – zajonc
いいえ、明らかではありません。キーワードおよび/または値を一致させますか?どんな更新クエリにもマッチすると思いますか?複数の設定値/騒音? (数字、等号、バックティック、複数の列などにマッチしないので、今は非常に制限されています)。 –
だから動的でなければならない。それは私の正規表現のスキルを超えて行きます。クエリは非常に複雑になる可能性があります(例として引用符で囲まれた引用符)。これは簡単な作業ではありません。しかし、将来の参考に:あなたが実際に達成しようとしていることをあなたの質問でより明確にするために、間違った質問に答えるために時間を無駄にしないようにしてください!* –