2016-09-19 76 views
1

我有'標籤'表與列(id,鏈接)。鏈接可能值:如何使用正則表達式

id link 
1 index 
2 index/index 
3 index/.* 

當我拿到指標,我需要選擇ID爲1和:

index -> 1 
index/index -> 2 
index/test -> 3 

我用的是這樣的:

SELECT * FROM tags WHERE 'index/test' REGEXP link LIMIT 1 

但它返回我的id 1,如果我刪除LIMIT第二行將是ID 3.我只需要完整的數學 - 只有ID 3.

+0

「標籤」表和tou「id/link」表之間的鏈接是什麼? – Delphine

+0

@Delphine「id/link」表是標籤表。 – fantua

+0

由於''index/test''匹配#1和#3,查詢應該如何在它們之間進行選擇? –

回答

0

也爲regexp,列標識tifier先出現,然後是搜索值。當我找到你的時候,每當搜索詞不是索引或索引/索引時,你都希望得到id - > 3。所以你的正則表達式可能類似於

SELECT * FROM tags WHERE link REGEXP '[^index/index|^index]$' 
+0

>只要搜索項不是索引或索引/索引 這僅僅是一個例子,我需要完整的數學模式 – fantua

+0

也許用這個RegExp:'[^ index \/index |^index \/+] $'。接受「索引/索引」和「索引/ *」,其中*可以是特殊字符/字母/上限/數字...... – Delphine