我有一個消息表。我試圖在表中找到具有符合特定格式的ID代碼的消息。我下面的正則表達式是爲了在PHP中匹配這些值而編寫的,但我想將它移動到MySQL查詢中。MySQL REGEXP不匹配字符串
它正在尋找的識別符代碼的特定格式,看起來像這樣:
[692370613-3CUWU]
該代碼具有一致格式:
- 開始,並用硬括號[] 結束
- 裏面的兩個組件,
- 第一個是帳號,最小9位數,但可能更高
- 第二組分是一個字母數字代碼,5個字符,可包括1-9,和大寫字母但不包括「O」
- 的完整代碼可以在消息
我有一個查詢中的任何地方發生上面寫着:
SELECT * FROM messages
WHERE
msgBody REGEXP '\\[(\d){9,}-([A-NP-Z1-9]){5}\\]'
OR
msgSubject REGEXP '\\[(\d){9,}-([A-NP-Z1-9]){5}\\]'
我在其中只在上面進行測試msgBody場採樣值的表中創建一個測試行 - 但它不會返回任何結果。
我在猜測,我錯過了PHP風格的正則表達式與MySQL的轉換。
非常感謝幫助。
謝謝!
是做到了 - 謝謝! –