Aller au contenu

Extraire des chaines de caractère entre crochet "[ ]"


Bones-75

Messages recommandés

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)

Bonsoir,

Y aurait-il des idées pour retirer des chaînes de caractères entre crochet "[xxxx.xxxx.xxxx.xxxx]" ?

"abcd=aaaa[xxxx.xxxx.xxxx.xxxx]"

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant
MembreR, 23ans Posté(e)
arrial MembreR 1 904 messages
Forumeur vétéran‚ 23ans‚
Posté(e)
il y a 21 minutes, Bones-75 a dit :

Y aurait-il des idées pour retirer des chaînes de caractères entre crochet "[xxxx.xxxx.xxxx.xxxx]" ?

Dans quel environnement ???

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
il y a 7 minutes, arrial a dit :

Dans quel environnement ???

Linux --> sous un terminale 

Shell Unix

Lien à poster
Partager sur d’autres sites

MembreR, 23ans Posté(e)
arrial MembreR 1 904 messages
Forumeur vétéran‚ 23ans‚
Posté(e)
il y a 12 minutes, Bones-75 a dit :

Linux --> sous un terminale 

Shell Unix

Je ne cause pas d'OS, mais d'outil de travail.

Exemple sous VBA, on écrit une macro.

 

◙◙◙◙◙

OK : l'interpréteur de commande de Unix, je ne le connais pas.

Éventuellement, consulter https://www.shellunix.com/commandes.html

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
il y a 7 minutes, arrial a dit :

Je ne cause pas d'OS, mais d'outil de travail.

Exemple sous VBA, on écrit une macro.

 

◙◙◙◙◙

OK : l'interpréteur de commande de Unix, je ne le connais pas.

Éventuellement, consulter https://www.shellunix.com/commandes.html

Ok merci, mais je l'ai déjà consulté une vingtaine de fois.

Lien à poster
Partager sur d’autres sites

Membre, 🐧 Forumeur libre, 54ans Posté(e)
Ed. Membre 959 messages
54ans‚ 🐧 Forumeur libre,
Posté(e)

Tu peux utiliser la commande sed avec l'expression rationnelle qui va bien.

echo "abcd=aaaa[xxxx.xxxx.xxxx.xxxx]" | sed -e "s/\[[^]]*/[/"

abcd=aaaa[]

 

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
il y a 2 minutes, Ed. a dit :

Tu peux utiliser la commande sed avec l'expression rationnelle qui va bien.



echo "abcd=aaaa[xxxx.xxxx.xxxx.xxxx]" | sed -e "s/\[[^]]*/[/"

abcd=aaaa[]

 

merci

Lien à poster
Partager sur d’autres sites

Membre, 🐧 Forumeur libre, 54ans Posté(e)
Ed. Membre 959 messages
54ans‚ 🐧 Forumeur libre,
Posté(e)
à l’instant, Bones-75 a dit :

Il prend bien se qu'il y a entre parenthèse ? 

Bah non, il retire, il supprime. Tu voulais dire "récupérer" le contenu entre crochets ?

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
à l’instant, Ed. a dit :

Bah non, il retire, il supprime. Tu voulais dire "récupérer" le contenu entre crochets ?

Oui ^^ 

Désoler je pense mettre mal exprimer.

Lien à poster
Partager sur d’autres sites

Membre, 🐧 Forumeur libre, 54ans Posté(e)
Ed. Membre 959 messages
54ans‚ 🐧 Forumeur libre,
Posté(e)

Dans ce cas, cela devrait convenir :

 

echo "abcd=aaaa[xxxx.xxxx.xxxx.xxxx]" | sed -e "s/[^[]*\[\([^]]*\)]/\1/"

 

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)

J'ai essayer echo "abcd=aaaa[xxxx.xxxx.xxxx.xxxx] | sed 's/.*\aaaa[\(.*)]/ .*$\1/' 

(^ ^;)

il y a 1 minute, Ed. a dit :

Dans ce cas, cela devrait convenir :

 


echo "abcd=aaaa[xxxx.xxxx.xxxx.xxxx]" | sed -e "s/[^[]*\[\([^]]*\)]/\1/"

 

Ok merci ^^, je pense que je chercher justement une commande comme celle-ci je vais l'essayer 

Lien à poster
Partager sur d’autres sites

Invité
Invités, Posté(e)
Invité
Invité Invités 0 message
Posté(e)

@Mak Marceau maîtrise Linux. Il pourra peut-être aider.

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)

Merci, bcp pour ton aide @Ed.

Lien à poster
Partager sur d’autres sites

Membre, 🐧 Forumeur libre, 54ans Posté(e)
Ed. Membre 959 messages
54ans‚ 🐧 Forumeur libre,
Posté(e)
il y a 11 minutes, Bones-75 a dit :

Ok merci ^^, je pense que je chercher justement une commande comme celle-ci je vais l'essayer 

Si ce genre de commande t'intéresse, je te conseille la faq de Sed, trouvable un peu partout sur le net (je ne sais plus si elle est dispo en français) ainsi que l'apprentissage des expressions rationnelles (regular expressions ou regex en anglais).

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
il y a 1 minute, Nutkin a dit :

@Mak Marceau maîtrise Linux. Il pourra peut-être aider.

D'accord @Nutkin merci

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
à l’instant, Ed. a dit :

Si ce genre de commande t'intéresse, je te conseille la faq de Sed, trouvable un peu partout sur le net (je ne sais plus si elle est dispo en français) ainsi que l'apprentissage des expressions rationnelles (regular expressions ou regex en anglais).

Exacte j'ai fais des visites un peut partout pour trouver les commandes avec "sed" aucun résultat ne ma satisfait, je contenais soit des erreurs soit des bouts de texte. Cependant je suis tomber sur une commande "cut" et je sais pas trop m'en servir du coup....j'ai opter pour "sed".

Lien à poster
Partager sur d’autres sites

Membre, 🐧 Forumeur libre, 54ans Posté(e)
Ed. Membre 959 messages
54ans‚ 🐧 Forumeur libre,
Posté(e)
il y a 4 minutes, Bones-75 a dit :

je suis tomber sur une commande "cut"

cut sert, par exemple,  à récupérer le X-ième mot dans une phrase ou un champ particulier parmi d'autres séparés par un caractère connu. On peut s'en servir pour récupérer des infos dans un fichier CSV ou dans la sortie d'une autre commande.

 

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
il y a 13 minutes, Ed. a dit :

cut sert, par exemple,  à récupérer le X-ième mot dans une phrase ou un champ particulier parmi d'autres séparés par un caractère connu. On peut s'en servir pour récupérer des infos dans un fichier CSV ou dans la sortie d'une autre commande.

 

Je vois, du coups est il préférable d'utiliser "cut" ou "sed" ?  

Lien à poster
Partager sur d’autres sites

Membre, 🐧 Forumeur libre, 54ans Posté(e)
Ed. Membre 959 messages
54ans‚ 🐧 Forumeur libre,
Posté(e)
il y a 1 minute, Bones-75 a dit :

Je vois, du coups est il préférable d'utiliser "cut" ou "sed" ?  

Ici, c'est sed qui convient le mieux.

Lien à poster
Partager sur d’autres sites

Membre, 23ans Posté(e)
Bones-75 Membre 89 messages
Forumeur activiste‚ 23ans‚
Posté(e)
il y a 3 minutes, Ed. a dit :

Ici, c'est sed qui convient le mieux.

D'accord merci encore pour ton aide @Ed.

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×