ฉันมีงานที่น่าสนใจมาก ซึ่งฉันไม่รู้วิธีปฏิบัติ
ฉันต้องจัดเก็บนิพจน์ทั่วไปจำนวนมากไว้ในตารางฐานข้อมูล และต้องสามารถค้นหาได้ว่านิพจน์ใดตรงกับสตริงที่กำหนด
ตัวอย่างเช่น:
id | regexp
---|-------------
1 | ^hello world$
2 | ^I have [0-9] flowers&
3 | ^some other regexp$
4 | ^and another (one|regexp)$
และฉันต้องค้นหาว่าสำนวนใดตรงกับสตริง "ฉันมีดอกไม้ 5 ดอก" แน่นอนว่าฉันสามารถ SELECT * FROM table และวนซ้ำนิพจน์ที่จับคู่พวกมันทีละรายการใน PHP ได้ แต่นี่อาจเป็นเรื่องที่แย่มากสำหรับเซิร์ฟเวอร์ที่จะจัดการ
ฉันสามารถจัดทำดัชนีตารางนี้หรือใช้แบบสอบถาม SQL พิเศษเพื่อจัดการงานนี้ได้หรือไม่
ฉันจะขอบคุณคำตอบใด ๆ ขอบคุณ