sql >> Database >  >> RDS >> Mysql

MySQL REGEXP en herhaalde woorden

Gewoonlijk zou men positieve vooruitziende beweringen gebruiken voor deze taak, maar de regex-engine van MySQL ondersteunt ze niet.

Daarom is je enige optie (als je dit in een enkele regex wilt doen) om beide varianten af ​​te handelen (hello na red of hello voor red ) "handmatig":

hello.*red|red.*hello

Voor twee "zoekwoorden" is dat waarschijnlijk acceptabel - het schaalt echter niet goed.

Uw regex ((hello|red).*){2}()* is een beetje vreemd; het betekent

(            # Start of group:
 (hello|red) # Match either hello or red
 .*          # Match any number of characters
){2}         # Match this group twice
()*          # Match the empty string any number of times...

dus dit komt overeen met hello foo hello of red bar red ook.



  1. Moet ik voorbereide instructies voor MySQL gebruiken in PHP PERFORMANCE-WISE?

  2. MySQL-gegevensafbrekingsfout

  3. mySQL-query:hoe invoegen met UNION?

  4. SQL-query - resultaten samenvoegen tot één string