繁体   English   中英

需要一个Javascript正则表达式来匹配URL中的语言参数

[英]Need a Javascript regex expression to match a language param in URL

我对正则表达式不熟悉,也没有找到适合我的情况的解决方案。 我的网站使用了以下URL:

(http(s)://www.)website.com/en/someURL
(http(s)://www.)website.com/anotherURL
(http(s)://www.)website.com/de/anotherURL

如果website.com/someURLwebsite.com/website.com访问默认语言将被载入。

我需要一个仅允许这些特定语言代码的正则表达式,区分大小写并不重要:

(http(s)://www.)website.com/en
(http(s)://www.)website.com/en/
(http(s)://www.)website.com/
(http(s)://www.)website.com
(http(s)://www.)website.com/de
(http(s)://www.)website.com/de/

此正则表达式将起作用:

^((https?)?\:\/\/www\.)?website\.com(\/((de|en)\/?)?)?$

如果要在[ https://regex101.com/][1]上进行一些单元测试,则应删除^和$作为开始和结尾,否则仅在只使用一行的情况下,您才能看到肯定的结果。

为了进行测试,您可以使用它(如果需要,可以添加一些行):

https://www.website.com/en
http://www.website.com/en/
https://www.website.com/
https://www.website.com
https://www.website.com/de
https://www.website.com/de/

您只需要将字母的数量限制为两个即可得到\\w{2}语言

https?\:\/\/www\.website\.com\/((\w{2})\/?$|(\w{2})\/)

例如https://regex101.com/r/SCbDyY/2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM