2011-12-17 18 views
0

私のデータベースでゲームタイトルの検索エンジンを実行していますが、それに問題があります。交換機能の問題

まず、ここでDBの表情です:

SELECT g.title FROM game g WHERE g.title LIKE '%abc%' 

私がやりたいすべて、このようなすべてのタイトルをプリントアウトすることです(:

ID TITLE 
1  aaB 
2  abc 
3  ABC 
4  AbdedABc 
5  deff 

次に、私はこのクエリをやっています大胆なマッチ)で:

01:今のところ

abc // match 
ABC // match 
Abded ABc // match last part, space added for clarity 

、私のスクリプトはこれを返します。

str_replace('abc', '<b>abc</b>', $row['title']) 

abc // matches 
ABC 
AbdedABc 

大文字/小文字を変更しないアルゴリズム(または他の方法)を知っていますか?

+0

「$ match」とは何ですか? –

+0

申し訳ありませんが、私の悪い。投稿された記事 –

答えて

1

私はあなたが上位または小文字でabcの任意の組み合わせに一致すると、あなたはこのように行うことができ、それは太字にするのではなく、やってwan'tかわからないんだけど:

$data = "testABC"; 
echo preg_replace("/(abc)/i","<bold>$1</bold>",$data); 
+0

大胆な部分は、OPが彼らが何をしようとしていたかではなく、質問をどのようにしているかと関係があったと思います。 –

2

あなたはケースを探しています-sensitiveはそれから置き換えますか? str_ireplaceを見てください。

+0

http://codepad.org/PdSsxLFc –