Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将此regexp行拆分为若干行?_Javascript_Jquery_Html_Regex - Fatal编程技术网

Javascript 如何将此regexp行拆分为若干行?

Javascript 如何将此regexp行拆分为若干行?,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,使用了搜索,但确实不了解如何在几个较短的文件上拆分此长regexp: var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); 您的regexp非常好。但是,如果您想将其分成几个简短的if,您可以不使用regexp执行以下操作: var s = "I'm on IPOD" mobiles = ["Android", "webOS", "i

使用了搜索,但确实不了解如何在几个较短的文件上拆分此长regexp:

var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);

您的regexp非常好。但是,如果您想将其分成几个简短的if,您可以不使用regexp执行以下操作:

var s = "I'm on IPOD"

mobiles = ["Android", "webOS", "iPod"]
var isMobile = false

for (var i = 0; i < mobiles.length; i++) {
    if (s.toLowerCase().indexOf(mobiles[i].toLowerCase()) >= 0) {
        isMobile = true;
    break;
    }
}

window.alert(isMobile)

你的几个较短的正则表达式会做什么?使用RegExp构造函数并构建你的字符串,例如,从带有.join |的数组或任何你真正想要的方式生成字符串。如果这个正则表达式有效,我可以问你何时需要将RegExp拆分为几个较短的正则表达式吗?这在我看来似乎不合逻辑,但你可能有你的理由…通常人们会问如何将它们结合在一起。。。。你想怎么打破它?目的何在?较小的会做什么?现在还不清楚你想要什么,特别是因为这是一个基本的reg exp,有很多ors。这很容易解释。这段代码运行得非常好,但我尽量保持代码的结构化,这一行太长,不适合在屏幕上显示。事实上,我不理解这个代码,我从互联网上的另一个解决方案中获取了它,它非常适合我。如果我明白,我当然会使用构造函数或smt。我只想要这样的东西:var x=qwerty'\n'dfuiopl;但是连接不起作用。你能看看这个@fxvlad吗?我看过了。您原来的regexp没有什么问题,它做的正是它应该做的。为什么要改呢?谢谢回复!是的,它工作得非常好,但我试图保持我的代码结构化,这一行太长,不适合屏幕,这就是我希望有smt一样的连接,但这个dpoesn不适用于正则表达式字符串。请看下面的答案: