Pages : 1
#1 Le 17/04/2022, à 17:25
- ar barzh paour
[Résolu] awk et parenthèse
hello bonsoir
comment remplacer une parenthèse ouvrante d'une chaîne avec awk ?
en fait je veux remplacer
espace(espace
ou
espace(
ou (espace
par
(
malgré plusieurs essais avec gsub
je n'y arrive pas et j'obtiens
(FILENAME=awk-coupe.txt FNR=1) fatal : invalid regexp: ( ou \( sans correspondance: / /(//
ou quelque chose de similaire
avec la parenthèse fermante pas de problème comme ci dessous,
gsub(" )",")",res)
gsub(") ",")",res)
ou
en une seule passe (pas tout à fait équivalente)
gsub(" *) *",")",res)
Dernière modification par ar barzh paour (Le 17/04/2022, à 18:14)
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#2 Le 17/04/2022, à 17:36
- Watael
Re : [Résolu] awk et parenthèse
salut,
déjà, si tu veux remplacer espace( par (, il faudrait le dire à awk, et pas )
ensuite, il faut protéger la parenthèse, et protéger la protection :
gsub(" \\(","(",res)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 17/04/2022, à 18:03
- pingouinux
Re : [Résolu] awk et parenthèse
Bonjour,
Autre méthode :
gsub(" *[(] *","(",res)
Hors ligne
#4 Le 17/04/2022, à 18:12
- ar barzh paour
Re : [Résolu] awk et parenthèse
merci à tous les deux
j'avais essayé avec \( mais pas avec \\(
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne