Extraction de mots spécifiques et comptage des occurrences à partir de chaînes MySQL
De nombreux utilisateurs recherchent une syntaxe de requête MySQL qui leur permet d'extraire des mots spécifiques et de compter leurs occurrences d’une chaîne donnée. Contrairement aux exemples d'expressions régulières qui vérifient la correspondance des expressions de texte, il n'y a pas de syntaxe intégrée pour l'extraction de texte dans MySQL.
Cependant, une solution partielle peut être obtenue pour des scénarios d'extraction de mots spécifiques. Par exemple, pour extraire le deuxième mot, vous pouvez utiliser le code suivant :
SUBSTRING(sentence, LOCATE(' ', sentence) + CHAR_LENGTH(' '), LOCATE(' ', sentence, (LOCATE(' ', sentence) + 1) - (LOCATE(' ', sentence) + CHAR_LENGTH(' '))))
Pour illustrer, considérons la requête suivante :
SELECT SUBSTRING(sentence, LOCATE(' ', sentence) + CHAR_LENGTH(' '), LOCATE(' ', sentence, (LOCATE(' ', sentence) + 1) - (LOCATE(' ', sentence) + CHAR_LENGTH(' ')))) as string FROM (SELECT 'THIS IS A TEST' AS sentence) temp
Cette requête réussira à extraire le mot "IS" comme deuxième mot de la chaîne "CECI EST UN TEST".
Il est important de noter que même si cette approche fournit une solution de contournement pour des scénarios spécifiques, MySQL ne le fait pas. prend en charge nativement l'extraction de correspondances d'expressions régulières. Pour des exigences plus avancées, envisagez d'implémenter le post-traitement sur le client ou d'installer une extension MySQL pour prendre en charge l'extraction de texte.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!