Comment faire des Regexs seulement correspondre exacte des matchs?
Ok, donc en gros j'ai un peu de code qui correspond à l'Url par regexs. Ensuite, il va appeler une fonction basée sur les regex l'URL correspond à l'encontre. Je ne veux jamais plus d'une fonction à appeler pour une URL et je veux que l'expression régulière correspond à doivent être "exactes"
Par exemple, avec l'URL simple /
j'utilise un simple regex /
qui va correspondre à /
mais il correspond aussi à des choses comme /foo
et /foo/bar
.
Comment puis-je éviter ce type de comportement correspondant en C#/.Net?
Avez-vous essayé d'utiliser .NET le Routage d'URL au lieu de rouler votre propre itinéraire répartiteur?
c'est drôle que vous avez mentionné. Je suis allé sur pour mettre en place mes propres routage d'URL(dans une beaucoup plus autonome de la mode que .Net) méthode comme un mois après cette question 😛
c'est drôle que vous avez mentionné. Je suis allé sur pour mettre en place mes propres routage d'URL(dans une beaucoup plus autonome de la mode que .Net) méthode comme un mois après cette question 😛
OriginalL'auteur Earlz | 2011-01-03
Vous devez vous connecter pour publier un commentaire.
Utilisation
^
pour faire correspondre le début d'une chaîne et$
pour la fin d'une chaîne.Par exemple:
^/$
correspond/
mais pas/foo
. Et^/
correspond/foo
mais pasfoo/
.OriginalL'auteur ulrichb
Ajouter de l'espace au début et à la fin de mot clé que vous souhaitez correspondre avec.
Par exemple, vous avez une chaîne
"Hey! foobar I am foo bar."
Maintenant, disons que vous voulez faire correspondre foo.Vous pouvez le faire
/\s+foo\s+/i
ce sera match retour pour seulement foo et pas foobar.OriginalL'auteur Bhushan Lodha