Mysql
 sql >> Base de données >  >> RDS >> Mysql

Correspondance de mots entiers avec des points dans MySQL

Cette expression régulière fait ce que vous voulez :

SELECT name
FROM tbl_name
WHERE name REGEXP '([[:blank:][:punct:]]|^)u[.]s[.]([[:punct:][:blank:]]|$)'

Cela correspond à u.s. lorsqu'il est précédé de :

  • un espace (espace, tabulation, etc.)
  • ponctuation (virgule, crochet, etc.)
  • rien (c'est-à-dire en début de ligne)

et suivi de :

  • un espace (espace, tabulation, etc.)
  • ponctuation (virgule, crochet, etc.)
  • rien (c'est-à-dire en fin de ligne)

Voir un SQLFiddle avec des cas de bord couvrant les points ci-dessus.