小程序正则表达式判断URL在真机调试和体验版表现不一致
发布于 5 年前 作者 yutao 11020 次浏览 来自 问答
  • 当前 Bug 的表现(可附上截图)

    编写了一段正则表达式判断URL的代码,实测在开发者工具的真机调试中判断URL返回为true,在真机体验版上返回为false。

    

  • 预期表现

    两平台返回值统一

  • 复现路径

    

  • 提供一个最简复现 Demo
       isURl(str_url) {
          var strRegex = '^((https|http|ftp|rtsp|mms)?://)'+
                        '?(([0-9a-z_!~*\'().&=+$%-]+: )?[0-9a-z_!~*\'().&=+$%-]+@)'+
                        '?(([0-9a-z_!~*\'()-]+.)*([0-9a-z][0-9a-z-]{0,61})?[0-9a-z].[a-z]{2,6})'+
                        '(:[0-9]{1,4})'+
                        '?((/?)|(/[0-9a-z_!~*\'().;?:@&=+$,%#-]+)+/?)$';
            var re = new RegExp(strRegex);
            //re.test()
            console.log(re.test(str_url.trim()),str_url.trim())
            if (re.test(str_url.trim())) {
                return (true);
            } else {
                return (false);
            }
        }

测试URL为:

let a = 'https://weibo.com';
let b = '/p/10080817c0fee819b9c79696a382f9634dbd87';
let url = a+b

真机体验版返回为false,真机调试返回true。

1 回复

微博域名实属无奈,抱歉,见谅

回到顶部