[regex] selection d'une phrase avec espacemen
Résolu
TiBou59
Messages postés
22
Date d'inscription
Statut
Membre
Dernière intervention
-
TiBou59 Messages postés 22 Date d'inscription Statut Membre Dernière intervention -
TiBou59 Messages postés 22 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je bute sur un problème qui est le suivant :
j'aimerais sélectionner les chaines qu'il y a entre le deuxieme groupe de chevrons ">>" et le "@" (ici je l'ai mis en gras).
Exemple avec espace :
C;K"Boitiers >> Accessoires >> Panneau Transparent@"
Exemple avec caractères spéciaux :
C;K"Boitiers >> Aluminium >> Desktop / Salon@"
Avec l'expression regulieres suivante :
C\;K\"([A-Za-z]{1,})....([A-Za-z]{1,})....([A-Za-z]{1,})
je sélectionne tout jusqu'au premier mot après le deuxième bloc de chevron dont voici un exemple en gras :
C;K"Boitiers >> Accessoires >> Panneau Transparent"
Il est indispensable pour votre comprehension du sujet que vous sachiez que la longueur des chaines apres chevrons n'est pas fixe, j'ai énormément de cas à traiter.
Je vous demande juste, dans la mesure du possible, de compléter mon expression reguliere avec les criteres dont j'ai besoin.
Merci beaucoup par avance pour vos reponses.
Je bute sur un problème qui est le suivant :
j'aimerais sélectionner les chaines qu'il y a entre le deuxieme groupe de chevrons ">>" et le "@" (ici je l'ai mis en gras).
Exemple avec espace :
C;K"Boitiers >> Accessoires >> Panneau Transparent@"
Exemple avec caractères spéciaux :
C;K"Boitiers >> Aluminium >> Desktop / Salon@"
Avec l'expression regulieres suivante :
C\;K\"([A-Za-z]{1,})....([A-Za-z]{1,})....([A-Za-z]{1,})
je sélectionne tout jusqu'au premier mot après le deuxième bloc de chevron dont voici un exemple en gras :
C;K"Boitiers >> Accessoires >> Panneau Transparent"
Il est indispensable pour votre comprehension du sujet que vous sachiez que la longueur des chaines apres chevrons n'est pas fixe, j'ai énormément de cas à traiter.
Je vous demande juste, dans la mesure du possible, de compléter mon expression reguliere avec les criteres dont j'ai besoin.
Merci beaucoup par avance pour vos reponses.
A voir également:
- [regex] selection d'une phrase avec espacemen
- Vérifier si une phrase est correcte - Accueil - Google
- Regex ne commence pas par ✓ - Forum PHP
- Url dans une phrase - Guide
- Traduction de phrase en français vers le créole martiniquais ✓ - Forum Loisirs / Divertissements
- Traduire une phrase français en créole - Forum Loisirs / Divertissements
2 réponses
Salut,
Je ne sais pas avec quel langage tu veux faire ton traitement, mais voilà ce que ça pourrait donner avec "sed" (éditeur de flux sous GNU/Linux, qui existe également pour Windows : sed pour Windows) :
;-))
Je ne sais pas avec quel langage tu veux faire ton traitement, mais voilà ce que ça pourrait donner avec "sed" (éditeur de flux sous GNU/Linux, qui existe également pour Windows : sed pour Windows) :
$ A='C;K"Boitiers >> Accessoires >> Panneau Transparent@"' $ B='C;K"Boitiers >> Aluminium >> Desktop / Salon@"' $ echo $A | sed 's|^.*>> \(.*\)@.*|\1|' Panneau Transparent $ echo $B | sed 's|^.*>> \(.*\)@.*|\1|' Desktop / SalonJ'espère que - à défaut de faire l'affaire à 100% - ça te permettra d'avancer un peu.
;-))
Exemple avec espace :
C;K"Boitiers >> Accessoires >> Panneau Transparent@"
Exemple avec caractères spéciaux :
C;K"Boitiers >> Aluminium >> Desktop / Salon@"
Le problème est résolu. L'expression régulière utilisée pour ces deux exemples est la suivante :
$item2 ="C\;N\;K\"([A-Za-z]{1,})....([A-Za-z]{1,})....([A-Za-z]{1,}).{1,}\@";
C;K"Boitiers >> Accessoires >> Panneau Transparent@"
Exemple avec caractères spéciaux :
C;K"Boitiers >> Aluminium >> Desktop / Salon@"
Le problème est résolu. L'expression régulière utilisée pour ces deux exemples est la suivante :
$item2 ="C\;N\;K\"([A-Za-z]{1,})....([A-Za-z]{1,})....([A-Za-z]{1,}).{1,}\@";
Le langage que j'utilise est le langage PHP, désolé de ne pas l'avoir précisé, j'ai testé ton expression reguliere sur le logiciel RegexSR, elle ne sélectionne rien. Mais il est possible que ta regex me soit utile. Les regex etant tout nouveau pour moi, j'essaierai de déceler ta logique dans la création de la regex et de l'appliquer à la mienne.
Aujourd'hui et demain, c'est le week end alors REPOS :). Je t'enverrai certainement un prochain message lundi.
Merci