2
考慮以下信息:如何在沒有領先空間的情況下在數據領域進行搜索?
id message
------------------------------------------------------------
1 $AA is the only way to go!
2 This is my $AA. There are many like it.
3 But this is my $AA.
4 My$AA is my swag.
5 For lack of imagination a message with $AA in the middle.
6 Another message with at the end: $AA
我想篩選與$ AA的所有消息:
- $ AA可能是在消息的開始(這樣:只有加上一個空格)
- $ AA可能處於消息(這樣:只有前一個空格)結束
- $ AA可能是其他地方的消息中(用空格包圍)
- $ AA能公頃在它之前和/或之後的標點符號:$ AA。 $ AA,或($ AA)
- 但不是任何其他charachters(字母和數字)
我通常會使用一個查詢,如
SELECT * FROM messages WHERE message LIKE '%$AA%'
但隨後消息4也回。我怎樣才能使查詢不返回消息4?
使用正則表達式。 http://dev.mysql.com/doc/refman/5.1/en/regexp.html – ethrbunny 2012-04-19 13:44:03
@ethrbunny正則表達式是一個不錯的選擇,但是這也可以通過類似的方式實現。看到我的答案 – 2012-04-19 14:11:51