Zend_Lucene 検索能力はかなりうまく機能します。 2番目の要件にどのように対処するかはわかりませんが、トークン化をカスタマイズした場合は、文字から数字への変更を新しい単語として扱うことでそれを実行できるはずです。
私が本当によくわからないのは、一番の要件です。インデックス付けの方法を考えると、検索では順序が不遜になるため、Luceneを大幅に編集するか、フィルターを作成する(luceneを使用して一致をプルしてから順序を確認する)か、独自のソリューションを作成しないと、順序を実行できない場合があります。 。これらはすべて検索速度を低下させ、サーバーに負荷をかけます。
solr もあります 、しかし私はそれを使ったことがなく、それについて何も知りません。 スフィンクス 別のものでしたが、あなたはすでにそれを除外しているようです。