正则表达式以匹配特定的URL和特定的查询字符串

时间:2019-05-20 10:05:36

标签: javascript regex url

我正在尝试编写一个简单的正则表达式,以匹配以下具有类似条件的网址:

var array:JsonArray? = JsonArray()

我对正则表达式不太有经验,关于如何实现此表达式的任何建议将非常有帮助。

1 个答案:

答案 0 :(得分:3)

您可以使用此正则表达式,该正则表达式将根据您的要求进行匹配,

https:\/\/www\.example\.com\/en\/signup\/(?:\?type=(?:xyz|abc))?$

说明:

  • https:\/\/www\.example\.com\/en\/signup\/-从字面上匹配https://www.example.com/en/signup/ URL
  • (?:\?type=(?:xyz|abc))?-这部分可选地匹配参数?type=,其值只能是xyzabc,否则将失败
  • $-字符串结尾

Regex Demo

JS代码演示

const arr = ['https://www.example.com/en/signup/','https://www.example.com/en/signup/?type=xyz','https://www.example.com/en/signup/?type=abc','https://www.example.com/en/signup/?type=abc1','https://www.example.com/en/signup/?type=other']

arr.forEach(s => console.log(s + " --> " + /https:\/\/www\.example\.com\/en\/signup\/(?:\?type=(?:xyz|abc))?$/.test(s)))