Sam*_*ler 2 javascript regex url wildcard
我正在尝试将带有通配符的 URL 与实际 URL 匹配。例如:
http://*google.com/*
Run Code Online (Sandbox Code Playgroud)
需要匹配
http://maps.google.com
Run Code Online (Sandbox Code Playgroud)
和
http://www.google.com/maps
Run Code Online (Sandbox Code Playgroud)
解决这个问题的最佳方法是什么?
我试过使用正则表达式,当我手动对其进行编程时效果很好,但我不确定是否可以动态生成正则表达式,或者这是否是这种情况下的最佳实践。
/(http|https):\/\/.*\.?google\.com\/?.*/i
Run Code Online (Sandbox Code Playgroud)
非常感谢。
更换所有出现*在与模式[^ ]*-它的零个或多个非空格字符序列匹配。
这样http://*google.com/*就会变成http://[^ ]*google.com/[^ ]*
这是完成任务的正则表达式:
regex = urlPattern.replace(/\*/g, "[^ ]*");
Run Code Online (Sandbox Code Playgroud)