Maison > base de données > tutoriel mysql > Comment puis-je compter avec précision les mots dans un champ de texte MySQL à l'aide d'expressions régulières ?

Comment puis-je compter avec précision les mots dans un champ de texte MySQL à l'aide d'expressions régulières ?

Linda Hamilton
Libérer: 2024-11-27 11:42:10
original
802 Les gens l'ont consulté

How Can I Accurately Count Words in a MySQL Text Field Using Regular Expressions?

Compter les mots dans MySQL à l'aide de Regex

Compter le nombre de mots dans un champ de texte à l'aide de MySQL peut être difficile, surtout lorsqu'il y en a plusieurs espaces entre les mots. La méthode couramment suggérée pour utiliser LENGTH(name) - LENGTH(REPLACE(name, ' ', '') 1 peut conduire à des résultats inexacts.

Remplacement d'expression régulière

Une solution potentielle consiste à exploiter la fonction REGEXP_REPLACE, qui permet des substitutions avancées basées sur des expressions régulières dans MySQL.

Implémentation :

SELECT LENGTH(REGEXP_REPLACE(name, '[[:space:]]+', ' ')) + 1
FROM table
Copier après la connexion

Cette requête utilise la fonction REGEXP_REPLACE pour remplacer tous les caractères d'espacement consécutifs ([[:space:]] ) par un seul espace caractère (' '). Le quantificateur garantit que même plusieurs espaces consécutifs seront réduits.

Supplémentaire. Notes :

  • La classe [[:space:]] correspond à tous les caractères d'espacement, y compris les espaces, les tabulations et les nouvelles lignes.
  • Contrôle de la saisie des données pour supprimer les doubles espaces avant l'insertion permet d'améliorer la précision.
  • Le stockage du nombre de mots dans la base de données après le calcul peut optimiser les accès fréquents.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal