Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/01/2016, à 09:18

fredobaldo

[RESOLU] Manipulation de chaine de caractere

Bonjour,

J'ai des chaînes de caractères (pas de la même longueur, mais toujours avec des chiffres)
et notamment la suivante:
ch=123456789
echo $ch #me donne: 123456789

Je voudrais intercaler entre chaque caractère un slash (/) et donc la transformer en:
ch=1/2/3/4/5/6/7/8/9
echo $ch #me donne: 1/2/3/4/5/6/7/8/9

Autre exemple, il faudrait que 114430 me donne 1/1/4/4/3/0

Pourriez vous me dire comment faire ? avec un while ? existe t il une astuce, une syntaxe bash ?
Merci.

Dernière modification par fredobaldo (Le 19/01/2016, à 10:03)

Hors ligne

#2 Le 19/01/2016, à 09:29

pingouinux

Re : [RESOLU] Manipulation de chaine de caractere

Bonjour,

sed 's#.#&/#g;s#.$##' <<<"$ch"

Ajouté :
Et si tu veux modifier la variable ch

ch=$(sed 's#.#&/#g;s#.$##' <<<"$ch")

Dernière modification par pingouinux (Le 19/01/2016, à 09:41)

Hors ligne

#3 Le 19/01/2016, à 10:02

fredobaldo

Re : [RESOLU] Manipulation de chaine de caractere

Parfait merci.

Hors ligne

#4 Le 23/01/2016, à 17:14

Totor

Re : [RESOLU] Manipulation de chaine de caractere

tongue

zsh -c 'variable="12345"; echo "${${(s..)variable}// //}"'
1/2/3/4/5

ou encore :

zsh -c 'variable="12345"; echo "${(j:/:)${(s..)variable}}"'

Dernière modification par Totor (Le 23/01/2016, à 17:16)


-- Lucid Lynx --

Hors ligne