im essayant d'analyser avec regex ( https: //regex101.com/r/klzioa/1/ ) p> J'ai actuellement p> qui analyse tout correctement sauf Je m'attendrais à ce que cela soit analysé comme Si je modifie la regex en p> Il analyse séparément les équipes plutôt que conjointement avec le tuyau échappé P> En gros, je veux analyser les champs entre les tuyaux cependant, s'il y a des tuyaux évasés, je voudrais les capturer. Donc, avec mon exemple, je m'attendrais à p> \ | Équipe \ | vs \ | équipe \ | code> p> | équipe | vs | équipe | code> p>
3 Réponses :
Vous pouvez alterner entre:
\\. code> - une barre oblique inverse suivie de n'importe quoi, ou li>
-
[^ | \\] + code> - tout sauf un tuyau ou une barre oblique inverse li>
ul> xxx pré> https://regex101.com/r / Klzioa / 2 p>
Notez qu'il n'y a pas besoin de la quantifier possessif, car aucun retour arrière ne se produira. P>
Si vous souhaitez également remplacer \ | < / code> s avec | code> s, puis faites-le ensuite: correspondre à "Code> \\\\ | Code> et remplacez par | p> p>
Dans cette situation \ | \ | | | vs \ | équipe \ | code> est capturé. Cela signifie-t-il que je devrais supprimer le «` »moi-même après manuellement?
Une expression régulière peut généralement correspondre i> Substrings, ou remplacer i> une partie d'une correspondance, mais ne faites pas les deux en même temps. Si vous souhaitez remplacer le \ | code> s avec | code> s, vous devrez le faire ensuite.
Pour manipuler l'échappement, vous devez correspondre à une barre oblique inverse et au caractère après une seule "élément".
Replace: \\(.) With: $1
Dans cette situation \ | \ | | | vs \ | équipe \ | code> est capturé. Cela signifie-t-il que je devrais supprimer le «` »moi-même après manuellement?
Oui, vous auriez effectivement besoin de le faire. Remplacez \\ (.) Code> avec 1 $ code>.
Utilisation: démo et explication < / p> p>
@Tomalak: True, je viens de copier la regex d'Op.