javascript - 在 JS 中使用 Regex 过滤字符串/URL

标签 javascript regex

我使用的数组包含多个 URL,包括 http://www.example.com .

现在我使用 document.URL 来检查我是否在这些网站之一上。如果是的话,它应该执行各种操作。但是,我确实想对 http://www.example.com?params=something 执行相同的操作也是。

这是我尝试解决的问题。

    for(var l=0;l<urlList.length;l++) {
                var url = urlList[l];
                if(document.URL == url || document.URL == (url + '\?.*' ) {

我做错了什么?如何正确使用该正则表达式(如果它是正确的表达式)?

提前致谢!

最佳答案

使用indexOf可能就足够了:

    for(var l=0;l<urlList.length;l++) {
            var url = urlList[l];
            if(document.URL.indexOf(url) !== -1) {

或者先用正则表达式对其进行“规范化”。这会去掉 http://和/或 www,看看这两个 URL 是否以相同的开头:

    var re = /https?:\/\/(www.)?/;
    for(var l=0;l<urlList.length;l++) {
            var url = urlList[l];
            if(document.URL.replace(re, '').indexOf(url.replace(re, '')) === 0) {

关于javascript - 在 JS 中使用 Regex 过滤字符串/URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26247892/

相关文章:

java - 从字符串中拆分地理坐标的正则表达式

python - 如何在 python 中编写正则表达式来匹配这个?

javascript - 如何在 Firefox WebExtensions 中将消息从页面脚本发送到 native 应用程序?

javascript - 通过 JS API : Failed to extract transfer calldata Error 400 在 OpenSea 上列出 NFT

Javascript : how to get value from a Script Tag

python - 如何将特定的正则表达式应用于特定的行

javascript - Backbone /Marionette : Adding view events to a dynamically added view for a bootstrap modal

javascript - 如何使用 jQuery URI 更新具有完整目录路径的链接?

r - 如何在 R 中提取这些多个正则表达式组

python - Pandas 在数据框中丢弃单词