[vim][regex] un mot oui, l'autre non

Fermé
apapap Messages postés 583 Date d'inscription mardi 16 septembre 2008 Statut Contributeur Dernière intervention 16 mai 2024 - Modifié par apapap le 10/08/2010 à 18:08
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 10 août 2010 à 23:17
Bonjour,

quelqu'un pourrait-il me rappeler siouplé, comment on fait une regex qui déclenche sur une ligne contenant, où que ce soit, un mot, mais nulle part, un autre?

exemple:

salade tomate jambon purée  
salade purée tomate   
tomate jambon salade purée  
salade purée tomate jambon  
salade purée tomate 
purée jambon tomate salade  
purée tomate salade  
saladetomatejambonpurée  
saladetomateknackpurée  
saladetomatepuréejambonyaourt



voala, le principe, c'est sélectionner TOUTE la ligne chaque fois qu'il y a de la purée mais pas de jambon (et la foutre dans un motif, pour la restituer entre /* et */ histoire de faire une grosse mise à jour d'une css de bourrin)

merci :)


du reste, je suis aussi intéressé par la regex donnant les lignes où il y a de la purée ET du jambon (bah oui quoi, de la purée sans jambon, c'est absurde)

j'ai su, je crois, mais rien à faire, je ne trouve plus, malgré mes bidouilles à coups de \@<= et tout le bataclan

4 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
10 août 2010 à 18:30
Salut l'ovoïde,

Avec sed ça te dit ?

[jp@MDK-64_2010 tmpfs]$ cat plop                                  
salade tomate jambon purée
salade purée tomate
tomate jambon salade purée
salade purée tomate jambon
salade purée tomate
purée jambon tomate salade
purée tomate salade
saladetomatejambonpurée
saladetomateknackpurée
saladetomatepuréejambonyaourt

[jp@MDK-64_2010 tmpfs]$ sed '/purée/{/jambon/b;s#.*#/*&*/#}' plop
salade tomate jambon purée
/*salade purée tomate   */
tomate jambon salade purée
salade purée tomate jambon
/*salade purée tomate */
purée jambon tomate salade
/*purée tomate salade  */
saladetomatejambonpurée
/*saladetomateknackpurée  */
saladetomatepuréejambonyaourt

[jp@MDK-64_2010 tmpfs]$ sed -n '/purée.*jambon/p' plop
salade purée tomate jambon
purée jambon tomate salade
saladetomatepuréejambonyaourt

[jp@MDK-64_2010 tmpfs]$

;-))
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
10 août 2010 à 18:41
0
apapap Messages postés 583 Date d'inscription mardi 16 septembre 2008 Statut Contributeur Dernière intervention 16 mai 2024 13
10 août 2010 à 23:10
salusaluche l'ami :)

je suis une tétraburne, oui en effet du sed me va très bien, c'est nickel! quand je pense que j'ai bien perdu deux heures à m'obstiner sur du vim au lieu de passer par un coup de sed au d'awk.... mais en fait je comprends pourquoi je n'y ai pas pensé. Je fais mon développement sous windows (bah voui faut continuellement s'assurer que môôôssieur IE digère ma css) et j'ai pas mes outils de prédilection (excepté vim), et comme un crétin j'ai pas pensé à attaquer mon fichier dans une session ssh directos sur le servhör

merchi :)

bon je me lève ultratôt donc je traîne po, goutenarte :)

et merde je hais ce bouton "tout accepter", à chaque fois je me fais niquer quand je veux envoyer :(

le bouton "valider" devrait être plus gros et plus visible que ce bouton "tout accepter"
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
10 août 2010 à 23:17
Le bot il n'aime pas le mot le Cambronne, et encore moins quand on l'associe en 2nd intention à d'autres noms de zoizos ;-))

Happy que sed ait fait ton affaire ;-))
0
apapap Messages postés 583 Date d'inscription mardi 16 septembre 2008 Statut Contributeur Dernière intervention 16 mai 2024 13
10 août 2010 à 23:16
et zobilamouche ça passe?
0