Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Extraire une chaine de caractères d'entre deux caractères identiques

Garamante

XLDnaute Junior
Salut )

Je n'ai pas trouvé mon bonheur dans le forum alors je vous soumets mon problème.

je veux extraire une chaine de caractères se trouvant entre deux slashs ( / ) identiques (ici l'alphabet
phonétique "pætʃ")

Exemple:


patch 1 / pætʃ / noun [ countable ]​


J'ai dû approcher la solution plus d'une fois mais pour l'instant nada, quelqu'un pour m'aider ?


Merci !!!
 

job75

XLDnaute Barbatruc
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour Garamante,

Le texte étant en A1 essayez en B1 :

Code:
=SI(NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))<2;"";SUPPRESPACE(STXT(A1;TROUVE("/";A1)+1;TROUVE("/";A1;TROUVE("/";A1)+1)-TROUVE("/";A1)-1)))
A+
 

dem1973

XLDnaute Nouveau
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour,

J'ai exactement le même besoin, mais sans espaces dans la chaîne.

Exemple ci-dessous : je veux extraire "Salle G26 - Zone CO"

/AT/FRANCE/AT.BEZ/Batiment G02/Salle G26 - Zone CO/G26-C-02/

Qu'est-ce que cela pourrait donner SVP ?

Merci pour votre aide.
 

job75

XLDnaute Barbatruc
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour dem1973, bienvenue sur XLD,

Je prends juste connaissance de ce post.

La question mériterait plus d'explications, mais en faisant 2 hypothèses :

- le texte contient au moins 6 slashes /

- on recherche la chaine comprise entre le 5ème et le 6ème slash,

on peut utiliser cette formule assez simple à comprendre :

Code:
=STXT(A1;TROUVE("µ";SUBSTITUE(A1;"/";"µ";5))+1;TROUVE("µ";SUBSTITUE(A1;"/";"µ";6))-TROUVE("µ";SUBSTITUE(A1;"/";"µ";5))-1)
A+
 

job75

XLDnaute Barbatruc
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Re,

Maintenant si n étant le nombre de slashes on veut trouver la chaine entre les slash n-2 et le slash n-1, il suffit dans la formule précédente de remplacer 5 et 6 par :

NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-2
NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-1


ce qui donne une formule nettement plus compliquée :

Code:
=STXT(A1;TROUVE("µ";SUBSTITUE(A1;"/";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-2))+1;TROUVE("µ";SUBSTITUE(A1;"/";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-1))-TROUVE("µ";SUBSTITUE(A1;"/";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-2))-1)
qui suppose au moins 3 slashes.

Et si l'on veut se débarrasser de cette dernière hypothèse, formule encore plus compliquée :

Code:
=SI(NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))<3;"";STXT(A1;TROUVE("µ";SUBSTITUE(A1;"/";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-2))+1;TROUVE("µ";SUBSTITUE(A1;"/";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-1))-TROUVE("µ";SUBSTITUE(A1;"/";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"/";""))-2))-1))
A+
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour à tous

J'ai exactement le même besoin, mais sans espaces dans la chaîne.
Exemple ci-dessous : je veux extraire "Salle G26 - Zone CO"
Je sais pas vous mais moi j'en vois trois des espaces non?

dem1973
Sinon pour te question, tu veux juste une solution formule, ou passer par VBA+RegExp avec fonction personnalisée est autorisé?

PS: La coutume veut qu'on pose sa question dans un fil qu'on crée pour l'occasion et non pas dans le fil d'un petit camarade de jeu
 

dem1973

XLDnaute Nouveau
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour,

Bonjour à tous

Je sais pas vous mais moi j'en vois trois des espaces non?
Oui, effectivement, j'ai mal exprimé la chose : "pas d'espace entre les caractères identiques". J'ai vu que dans la formule matricielle de solution on en tenait compte et ça m'a gêné pour appliquer directement.

Staple1600 à dit:
dem1973
Sinon pour te question, tu veux juste une solution formule, ou passer par VBA+RegExp avec fonction personnalisée est autorisé?
Solution formule STP. Le VBA, je ne connais pas à mon grand regret, et je n'ai pas le temps pour le moment de m'y plonger.

Staple1600 à dit:
PS: La coutume veut qu'on pose sa question dans un fil qu'on crée pour l'occasion et non pas dans le fil d'un petit camarade de jeu
OK, ma question étant fort rapprochante, je n'ai pas hésité à allonger le fil (sur d'autres forum on se fait allumer quand on n'a pas utilisé la fonction "Recherche"...). Je créerai un nouveau post à l'avenir.

Je n'ai pas encore testé les solutions, je vous tiens au courant. Encore merci.
 

job75

XLDnaute Barbatruc
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour dem1973, Staple,

Perso je trouve que la question de dem1973 complète très bien ce fil et qu'elle y a toute sa place.

A+
 

dem1973

XLDnaute Nouveau
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour,

J'ai utilisé la première réponse de job75 : elle donne entière satisfaction. Merci beaucoup pour votre aide et une bonne année 2013 !
 

kariboox

XLDnaute Nouveau
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour,

j'ai un besoin équivalent aux post ci dessus, mais je parviens pas à adapter ma formule
en colonne A, j'ai toute une liste de type :
p1sm-fb_r1.#24.tow

Je voudrais extraire juste le nombre situé entre le # et le .tow

Si quelqu'un pourrait m'aider, ce serait top!
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonsoir kariboox,

essayer cette formule:
Code:
=CNUM(STXT(A1;TROUVE("#";A1)+1;TROUVE(".";A1;TROUVE("#";A1))-TROUVE("#";A1)-1))
ou
Code:
=CNUM(STXT(A1;TROUVE("#";A1)+1;TROUVE(".tow";A1)-TROUVE("#";A1)-1))
 

marie_ca

XLDnaute Nouveau
Re : Extraire une chaine de caractères d'entre deux caractères identiques

Bonjour,

Moi je cherche un peu la même chose, à savoir extraire des caractères situés entre deux espaces, et jusque là je n'y suis pas parvenue. Pouvez-vous m'aider ?

Merci !
 

Pièces jointes

  • Classeur1.xlsx
    8.4 KB · Affichages: 124
  • Classeur1.xlsx
    8.4 KB · Affichages: 103

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…