Re: ACFinder テスト中

このトピックの投稿一覧へ

なし Re: ACFinder テスト中

msg# 1.7.3.2.1.2
depth:
5
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011.01.10 00:51 | 最終変更
OhYeah!  管理人   投稿数: 983 オンライン
作物ダイアログボックス>検索タブの部分一致検索ですが、別名でも検索できるように concat('、', sakumotsu, betsumei) から検索するようにしてもらえませんか?

ちなみに、携帯農薬検索では、検索する前にキーワードを下記のように処理しています。別名はすべてひらがなのみで登録しているので「西洋○○」「非結球○○」などをひらがなに変換するのと、「じかまき」「おおつぶ」などを「ちょくは」「たいりゅう」などに変換する処理です。
「○○を除く」の作物名を http://www.o-ya.net/modules/d3forum/index.php?post_id=184 の方法で取得すれば、作物テキストボックスにダイレクト入力する場合の辞書もこれで OK です。
// ACFinder の strconv(, 'k') と同じ機能の PHP ユーザ関数
function _strconv($str) {
  $from = array(
    'ー', 'ぁ','ぃ','ぅ','ぇ','ぉ','っ','ゃ','ゅ','ょ','ゎ',
    'が','ぎ','ぐ','げ','ご','ざ','じ','ず','ぜ','ぞ','だ','ぢ','づ','で','ど',
    'ば','び','ぶ','べ','ぼ','ぱ','ぴ','ぷ','ぺ','ぽ'
  );
  $to = array(
    '','あ','い','う','え','お','つ','や','ゆ','よ','わ',
    'か','き','く','け','こ','さ','し','す','せ','そ','た','ち','つ','て','と',
    'は','ひ','ふ','へ','ほ','は','ひ','ふ','へ','ほ'
  );
  return str_replace($from, $to, mb_strtoupper(mb_convert_kana($str, 'acHV')));
}

function conv_sakumotsu($str) {
  $str = str_replace('しかまき', 'ちよくは', $str);
  $str = str_replace('ちかまき', 'ちよくは', $str);
  $str = str_replace('おおつふ', 'たいりゆう', $str);
  $str = str_replace('こつふ', 'しようりゆう', $str);
  $str = str_replace('かつか', 'かくか', $str);
  $str = preg_replace('/(?<!ら)たねなし|種無(し)?/', 'むかく', $str);
  $str = preg_replace('/たねあり|種有(り)?/', 'ゆうかく', $str);
  $str = str_replace('非結球', 'ひけつきゆう', $str);
  $str = str_replace('半結球', 'はんけつきゆう', $str);
  $str = str_replace('西洋', 'せいよう', $str);
  $str = str_replace('食用', 'しよくよう', $str);
  $str = str_replace('ろち', 'ろし', $str);
  $str = preg_replace('/(.*)?((露地|ろし|施設|しせつ|水耕|すいこう)(栽培|さいはい)?)(.*)?/', '\1\5\(\2', $str);
  return $str;
}

$kw = conv_sakumotsu(_strconv('検索語'));
投票数:0 平均点:0.00

投稿ツリー

  条件検索へ