Remplacer tous les nombres 40 par '40' avec sed ou autres.
MamsT
Messages postés
3
Statut
Membre
-
baladur13 Messages postés 50016 Statut Modérateur -
baladur13 Messages postés 50016 Statut Modérateur -
Bonjour,
J'ai besoin de votre aide svp!
En fait je souhaiterai dans un programme remplacer tous les nombres 40 par '40' avec sed sous unix.
J'ai essayé ça:
$ echo "VAR in (40,401)" | /opt/freeware/bin/sed -e "s/40/'40'/g"
Résultat: VAR in ('40','40'1)
Problème, il prend en compte le 401 aussi en me prenant le '40' du nombre 401, alors qu'il est censé rien faire sur ce nombre. en gros je veux un résultat de ce type ('40', 401). Pourriez m'aider svp sur ce point. ça commence à m'embêter grave ;-).
PS: le nombre 401 pourrait bien être un autre nombre 4085, 2000, 4501,85406 etc...
Merci pour votre aide.
Cordialement
J'ai besoin de votre aide svp!
En fait je souhaiterai dans un programme remplacer tous les nombres 40 par '40' avec sed sous unix.
J'ai essayé ça:
$ echo "VAR in (40,401)" | /opt/freeware/bin/sed -e "s/40/'40'/g"
Résultat: VAR in ('40','40'1)
Problème, il prend en compte le 401 aussi en me prenant le '40' du nombre 401, alors qu'il est censé rien faire sur ce nombre. en gros je veux un résultat de ce type ('40', 401). Pourriez m'aider svp sur ce point. ça commence à m'embêter grave ;-).
PS: le nombre 401 pourrait bien être un autre nombre 4085, 2000, 4501,85406 etc...
Merci pour votre aide.
Cordialement
A voir également:
- Remplacer tous les nombres 40 par '40' avec sed ou autres.
- Remplacer disque dur par ssd - Guide
- Remplacer par word - Guide
- Remplacer coco - Accueil - Réseaux sociaux
- 02 40 indicatif - Guide
- Quel site pour remplacer coco - Accueil - Réseaux sociaux
2 réponses
Salut,
$ echo "VAR in (40,401,1402,1040)" | sed -re "s/\b40\b/'&'/g"
VAR in ('40',401,1402,1040)
Bonjour
A toutes fins utiles ==> https://www.commentcamarche.net/infos/25917-marquer-un-fil-de-discussion-comme-etant-resolu/
A toutes fins utiles ==> https://www.commentcamarche.net/infos/25917-marquer-un-fil-de-discussion-comme-etant-resolu/
$ echo "VAR=A40;" | sed -re "s/40([^0-9a-z'\"])/'40'\1/gi"
VAR=A'40';
Comme vous pouvez le constater, il me sort A'40'; il prend en compte le 40 de la chaine, alors qu'en réalité j'attendais d'avoir A40;
En tout cas Merci Beaucoup pour votre aide. c'est super sympa.
Je débute sur unix donc desolé si je vous embête sur le sujet.
Bien à vous.
Ça ne passera pas non plus, le besoin est différent. A chaque cas sa regex ;-\
D'où ma réflexion : à chaque cas sa regex ;-)