Je veux attraper si l'URL est une page de blog ou non. Une page de blog peut être:Chaîne optionnelle dans RegExp
/blog
/blog/page/1
/blog/page/143
Ainsi, page/pageNumber
est facultative. Comment puis-je créer une expression régulière qui en cours de test renvoie true
si l'URL est une page de blog?
J'ai créé le regex pour urls contenant la chaîne /page/
et il semble fonctionner très bien:
/\/blog\/page\/[1-9]([0-9]*)/
Exemple:
> /\/blog\/page\/[1-9]([0-9]*)/.test("/blog/page/1")
true
> /\/blog\/page\/[1-9]([0-9]*)/.test("/blog/page/0")
false
> /\/blog\/page\/[1-9]([0-9]*)/.test("/blog/page/30")
true
Mais comment puis-je mettre en /page/number
être facultative?
J'ai essayé:
/\/blog(\/page\/[1-9]([0-9]*))?/
Ce retourne true
pour urls incorrectes:
> /\/blog(\/page\/[1-9]([0-9]*))?/.test("/blog/p")
true
ce qui ne va pas avec/^ \/blog/i si vous êtes en utilisant test()? – dandavis
@dandavis '/ blog/1-my-interesting-post' n'est pas la même chose avec'/blog/page/1'. –