Qu'est-ce que Au fait, j'ai lu le manuel ici A >. P> (? <= x) code> signifie dans regex? p>
5 Réponses :
du python re code> Documentation:
Correspond à des correspondances Si la position actuelle de la chaîne est précédée d'une correspondance pour Cet exemple recherche un mot suivant un trait d'union: p>
blockQuote> (? <= ... ...) code> p>
... code> qui se termine à la position actuelle. C'est ce qu'on appelle une affirmation positive de regarder. (? <= abc) def code> trouvera une correspondance dans abcdef code>, puisque le lookbehind sauvegardera 3 caractères et vérifiera si le modèle contenu correspond si le modèle contenu correspond à la correspondance. Le motif contenu doit correspondre uniquement aux chaînes de certaines longueurs fixes, ce qui signifie que abc code> ou a | b code> est autorisé, mais a * code> et un {3,4} code> ne le sont pas. Notez que les modèles qui commencent par des assertions positives de la vue sur la vue positive ne correspondront jamais au début de la recherche de chaîne; Vous voudrez probablement utiliser la fonction de recherche () plutôt que la fonction correspondante (): p>
blockQuote>
C'est un LOOKEFEDIDE POSITIVE . P>
(? <= a) B CODE> (LOOKEHIND positive) correspond auB code> (et uniquement leB code>) dansCAB < / code>, mais ne correspond pas àlit code> oudette code>. p> blockQuote>Vous ne le trouverez pas dans n'importe quel manuel JavaScript, car il est Non pris en charge dans JavaScript Regex A>: p>
Enfin, les saveurs telles que JavaScript, Ruby et TCL ne supportent pas du tout le regard sur la vue, même s'ils soutiennent Lookahead. P> blockQuote>
FYI, à partir de la version 1.9 Ruby prend en charge Lookedehind.
+1 Pour mentionner la prise en charge de JavaScript de cette fonctionnalité d'expression régulière.
de régulier-expressions.info : p>
Looke émetteur positif de largeur zéro. Correspond à une position Si le motif à l'intérieur du lookahead peut être assorti à cette position (c'est-à-dire à gauche de cette position). En fonction de la saveur de regex que vous utilisez, vous ne pourrez peut-être pas utiliser de quantifiers et / ou d'alternance à l'intérieur de Lookebehind. P> blockQuote>
C'est ce qu'on appelle un look positif de derrière, il regarde en arrière pour le personnage X, note que cela n'est pas pris en charge par JavaScript. Pour une référence future, Voici un meilleur manuel :) P>
+1 Pour mentionner la prise en charge de JavaScript de cette fonctionnalité d'expression régulière.