2011-07-04 13 views
2

solrにワイルドカードクエリを実装したい。私はquery= ****diamondを検索するときにwhiltediamondなどを検索する必要があります。つまり、すべて'*'は、(空白)に置き換える必要があります(1 *を除く)。それは私がそれは*、それは、すべての特殊文字を置き換えるされ?:.「」以外の手段空白で1文字を残して複数の文字を置き換える正規表現

query=query.replace(/[^a-zA-Z 0-9 * ? : .]+/g,''); 

を使用しています、*diamondとして実行する必要があります。今私はすべてを置き換える必要がありますようにそれを変換したい**によって''を残します。 正規表現よりもすべきこと。

答えて

3

あなたの正規表現は、次の操作を行う必要があります。
一つだけアスタリスクでアスタリスクの任意の数を置き換え:あなたは私よりも簡単なので、

query=query.replace(/\*+/,'*'); 
+0

+1。 – stema

+0

ダニエル・ヒルガルト:ここでは「/ g」は何ですか – Romi

関連する問題