2010-11-18 15 views
4

私はJSON配列をとり、それをテーブルに表示するjquery自動完全スクリプトを持っています(Googleと同様です)。入力すると、PHPスクリプトからデータが要求されます。MongoDBで文字列の一部を検索するにはどうすればよいですか?

私がしたいのは、このデータを人型としてMongoDBデータベースから照会することですが、選択したフィールドのどの部分にも一致する必要があります。

私は同じフィールドに姓と名を持つ "名前"というフィールドを持っています。もし私が "ジョン・スミス"の記録を持っていれば、ジョー・ジョンジョンとスミ・スミ・スミット・スミスはすべて同じレコードに合っているはずです。 >(配列(「名前」=>「ジョン」)を見つける$集・を使用して

;。しかし、私のジョン・スミスの記録と一致しない 私は間違って何をやっている

答えて

7

あなたはそのために正規表現を使用する必要がありますこのような

$collection->find(array('Name' => new MongoRegex('/John/i')); 
+0

Spring Data Mongoリポジトリのクエリはどのように書くことができますか?してください...ありがとう、Neeta –

1

単に「ジョン」を使用して、あなたは? 。例えば、あなたが任意のサブ文字列にマッチする正規表現を使用することができます名前が正確に「ジョン」と一致するレコードを検索している:

$collection->find(array("Name" => "/.*John.*/i")); 
+0

として。よあなたはこれを必要としません。* – Maxence

関連する問題