Extraire le texte après la dernière instance d'un caractère spécifique
Si vous avez une liste de chaînes de texte complexes contenant plusieurs délimiteurs (prenez la capture d'écran ci-dessous comme exemple, qui contient des tirets, des virgules, des espaces dans les données d'une cellule), et maintenant, vous voulez trouver la position de la dernière occurrence du trait d'union , puis extrayez la sous-chaîne après. Cet article, je vais vous présenter quelques formules pour traiter cette tâche.
- Formule 1: extraire la sous-chaîne après la dernière instance d'un délimiteur spécifique
- Formule 2: extraire la sous-chaîne après la dernière instance d'un délimiteur spécifique
Formule 1: extraire la sous-chaîne après la dernière instance d'un délimiteur spécifique
Dans Excel, la fonction DROITE qui combine les fonctions LEN, SEARCH, SUBSTITUTE peut vous aider à créer une formule pour résoudre ce travail.
1. Pour extraire la sous-chaîne après la dernière occurrence du caractère tiret, entrez ou copiez la formule suivante dans une cellule vide:
2. Ensuite, faites glisser la poignée de remplissage vers les cellules que vous souhaitez appliquer cette formule, et vous obtiendrez le résultat comme ci-dessous capture d'écran:
Explication de la formule:
1. LEN (A2) -LEN (SUBSTITUT (A2, "-", "")): Cette partie est utilisée pour obtenir le nombre de traits d'union dans la cellule A2.
- LEN (A2): Cette fonction LEN renvoie le nombre total de caractères dans la cellule A2. Il reviendra: 44.
- SUBSTITUT (A2, "-", ""): Cette fonction SUBSTITUTE est utilisée pour remplacer tous les traits d'union par rien. Et vous obtiendrez le résultat comme suit: "InsérerDeleterows, feuilles, images, formules ».
- LEN (SUBSTITUT (A2, "-", ""): Obtenez la longueur totale de la chaîne de texte dans la cellule A2 sans les traits d'union.
- LEN (A2) -LEN (SUBSTITUT (A2, "-", "")): Soustrayez la longueur de la chaîne de texte sans tirets de la longueur totale de la chaîne pour obtenir le numéro du trait d'union, et cela obtiendra 2.
2. SUBSTITUT (A2, "-", "#", LEN (A2) -LEN (SUBSTITUTE (A2, "-", ""))): Cette fonction SUBSTITUTE est utilisée pour remplacer la dernière occurrence du trait d'union retourné par la formule de la première partie par un caractère #. Et vous obtiendrez ce résultat: "Insérer-Supprimer # lignes, feuilles, images, formules ».
3. RECHERCHE ("#", SUBSTITUT (A2, "-", "#", LEN (A2) -LEN (SUBSTITUT (A2, "-", ""))))= RECHERCHE ("#", "Insérer-Supprimer # lignes, feuilles, images, formules"): Cette fonction SEARCH renverra la position du caractère # dans la chaîne de texte renvoyée par la fonction SUBSTUTTE. Il obtiendra le numéro 14.
4. LEN(A2)-SEARCH("#",SUBSTITUTE(A2,"-","#",LEN(A2)-LEN(SUBSTITUTE(A2,"-","")))): Cette partie de la formule obtiendra le nombre de caractères après le dernier tiret. Cela obtiendra le numéro 30.
5. RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2,"-","#",LEN(A2)-LEN(SUBSTITUTE(A2,"-","")))))= DROITE (A2, 30): Enfin, la fonction DROITE est utilisée pour extraire 30 caractères qui sont retournés par la formule à l'étape 4 à partir du côté droit de la chaîne de texte dans la cellule A2.
Notes:
1. Si vous avez besoin d'extraire le texte après la dernière occurrence d'autres délimiteurs, il vous suffit de changer le trait d'union avec un autre délimiteur selon vos besoins.
2. S'il n'y a pas de délimiteur spécifique dans la chaîne de texte, la formule ci-dessus obtiendra une valeur d'erreur, voir capture d'écran:
Pour corriger cette erreur, vous pouvez inclure la formule ci-dessus dans la fonction IFERROR, veuillez appliquer la formule suivante:
Formule 2: extraire la sous-chaîne après la dernière instance d'un délimiteur spécifique
Voici une autre formule simple qui, créée par les fonctions TRIM, RIGHT, SUBSTITUTE, REPT et LEN, peut également vous aider à résoudre cette tâche dans Excel.
1. Veuillez copier ou entrer la formule ci-dessous dans une cellule vide où vous souhaitez obtenir le résultat:
2. Et puis, faites glisser la poignée de remplissage vers les cellules auxquelles vous souhaitez appliquer cette formule, et toutes les sous-chaînes après les derniers tirets ont été extraites comme illustré ci-dessous:
Explication de la formule:
1. LEN (A2): Cette fonction LEN renvoie le nombre total de caractères dans la cellule A2. Cela sera reconnu comme l'argument num_chars dans la fonction RIGHT. Il reviendra: 44.
2. SUBSTITUT (A2, "-", REPT ("", LEN (A2))):
- REPT ("", LEN (A2): Cette fonction REPT est utilisée pour obtenir un certain nombre de chaînes d'espace en fonction de la longueur de la cellule A2.
- SUBSTITUT (A2, "-", REPT ("", LEN (A2))): Cette fonction SUBSTITUTE remplacera les traits d'union dans la cellule A2 par les chaînes d'espacement qui sont renvoyées par la fonction REPT.
Cette formule de pièce sera reconnue comme l'argument de texte dans la fonction DROITE.
3. DROITE (SUBSTITUT (A2, "-", REPT ("", LEN (A2))), LEN (A2)): Cette fonction DROITE récupérera le texte du côté droit de la chaîne de texte retournée par la fonction SUBSTITUTE.
4. TRIM (): Cette fonction TRIM est utilisée pour supprimer tous les espaces supplémentaires et ne laisser qu'un espace entre les mots.
Fonctions relatives utilisées:
- RIGHT:
- La fonction DROITE extrait un nombre spécifique de caractères du côté droit de la chaîne de texte.
- SEARCH:
- La fonction RECHERCHE peut vous aider à trouver la position d'un caractère ou d'une sous-chaîne spécifique à partir du texte donné.
- LEN:
- La fonction LEN renvoie le nombre de caractères dans une chaîne de texte.
- SUBSTITUTE:
- La fonction de remplacement Microsoft Excel remplace le texte ou les caractères d'une chaîne de texte par un autre texte ou caractères.
- TRIM:
- La fonction TRIM supprime tous les espaces supplémentaires de la chaîne de texte et ne conserve que les espaces simples entre les mots.
- REPT:
- La fonction REPT est utilisée pour répéter les caractères un nombre de fois spécifié.
Plus d'articles:
- Extraire plusieurs lignes d'une cellule
- Si vous avez une liste de chaînes de texte séparées par des sauts de ligne (ce qui se produit en appuyant sur les touches Alt + Entrée lors de la saisie du texte), et maintenant, vous souhaitez extraire ces lignes de texte dans plusieurs cellules comme illustré ci-dessous. Comment pourriez-vous le résoudre avec une formule dans Excel?
- Extraire le nième mot d'une chaîne de texte dans Excel
- Si vous avez une liste de chaînes de texte ou de phrases, vous souhaitez maintenant extraire le nième mot spécifique de la liste, comme illustré ci-dessous. Cet article, je vais vous présenter quelques méthodes pour résoudre ce travail dans Excel.
- Extraire le texte entre parenthèses d'une chaîne de texte
- S'il y a une partie du texte entourée de parenthèses dans la chaîne de texte, vous devez maintenant extraire toutes les chaînes de texte entre les parenthèses comme illustré ci-dessous. Comment pourriez-vous résoudre cette tâche dans Excel rapidement et facilement?
- Extraire la sous-chaîne de la chaîne de texte dans Excel
- Il peut être une tâche courante pour vous que vous ayez besoin d'extraire des sous-chaînes de chaînes de texte, dans Excel, il n'y a pas de fonction directe pour le faire, mais, avec l'aide des fonctions GAUCHE, DROITE, MOYENNE et RECHERCHE, vous pouvez extraire types de sous-chaînes dont vous avez besoin.
Les meilleurs outils de productivité de bureau
Kutools for Excel - vous aide à vous démarquer de la foule
Kutools pour Excel possède plus de 300 fonctionnalités, Assurez-vous que ce dont vous avez besoin est à portée de clic...
Onglet Office - Activer la lecture et l'édition par onglets dans Microsoft Office (y compris Excel)
- Une seconde pour basculer entre des dizaines de documents ouverts!
- Réduisez chaque jour des centaines de clics de souris, dites adieu à la souris.
- Augmente votre productivité de 50% lors de l'affichage et de l'édition de plusieurs documents.
- Apporte des onglets efficaces à Office (y compris Excel), tout comme Chrome, Edge et Firefox.