2012-03-19 14 views
0

私は単純な高度な検索を実装しようとしています。これにより、デフォルトのパラメータの検索だけでなく高度な検索ボックスも検索できます。シンプル/アドバンス検索

例えば、検索ボックスでは、「from」と「to」を日付範囲で検索し、「from:xx/xx/xxxx to:xx/xx/xxxx」という簡単な検索を行います。取得要求のために変換します。

私が必要と考えるのは、keyword:...keyword:...と文字列の終わりを分割する正規表現です。

I言い換えれば、「criteria1:何とか何とかcriteria2:FOOのcriteria3:バー」分割する正規表現するものです

または別のソリューションがこれを行うjQueryプラグインだろうが。

+1

特定の質問がありましたか? – AlexMA

+0

質問が更新されました。 –

+0

Arent RegExpsは最大10個の変数に制限されていますか? – Amberlamps

答えて

0

最も簡単な方法は、正の先読みを使用することです:

"criteria1:blah blah criteria2:foo criteria3:bar" 
    .match(/([\w\d]+:[\w\d\s]+?)(?= [\w\d]+:|$)/g) 
// returns ["criteria1:blah blah", "criteria2:foo", "criteria3:bar"] 

あなたは基準名と基準値として許さ何文字に変更する必要があります。

+0

crit1 = blah blah blah blahなんかの場合、この作業はできますか?または任意の数またはパラメータ? –

+0

もちろん。スペースは基準値として許されます(第2括弧の '\ s 'を参照)。必要に応じて、さまざまな使用/テストケースについて考えることができ、それらを使用して回答を更新することができます。 – kirilloid

+0

これは華麗な感謝です:) –

関連する問題