用几行写的JavaScript正则表达式
JavaScript regular expressions written in several lines
我有一些javascript编码风格的问题。由于谷歌关闭Linter,行应该不超过80个字符,但我有一些regexp这是大约120个字符长。当我在regexp中间换行时,它不能正常工作。如何处理呢?
var pattern = /veeery, veeeery looooooooooooooooooong regular expressssssssssssssssssssssssssion/;
一个解决方案是这样做:
var pattern = new RegExp(
'veeery, veeeery looooooooooooooooooong'
+' regular expressssssssssssssssssssssssssion'
);
如果你的模式声明是在循环中,这对于正则表达式文字来说是好的,我建议在循环之前移动这个声明,以避免重复创建实例和编译它的成本。
注意转义序列,您必须将'
替换为''
:以下两个正则表达式是相同的
/'d/g
new RegExp("''d", 'g')
虽然我认为这是一个荒谬的规则,但解决方案是从字符串表达式创建正则表达式。
var regex = new RegExp(
"first part of long regex" +
"second part of long regex" +
"and so on"
);
必须对正则表达式中的转义元字符进行双转义。也就是说,如果你的本地风格的正则表达式是:
var regex = /swing on a '*/;
那么你的字符串需要是:
var regex = new RegExp("swing on a ''*");
相关文章:
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 将javascript正则化为vb
- 将po-box javascript正则表达式转换为c#regex
- 被javascript正则表达式分组卡住了
- 从字符串中提取年份的Javascript正则表达式
- 尝试使用Javascript正则表达式来获取“&"分隔文本,无论它是否's是最后一个值
- JavaScript正则表达式匹配量
- 在字符串列表中搜索任何出现的单词,如果单词的第一个字符匹配,则高亮匹配单词.Javascript正则表达式
- javascript正则表达式来识别所有特殊字符
- Javascript-正则表达式,用于在未转义字符上拆分字符串,例如|,但忽略|
- 查找所有注释的JavaScript正则表达式
- javascript正则表达式验证未按预期工作
- javascript正则表达式,用于匹配带数字和不带数字的字符串
- 模仿负查找以匹配JavaScript正则表达式中没有紧跟特定字符的模式
- JavaScript正则表达式(带_-的字母数字字符)
- 用特定的javascript正则表达式替换每个单词
- 搜索日历事件的Javascript正则表达式
- 如何获取 JavaScript 正则表达式子匹配的位置
- 正则表达式子字符串以JavaScript开始和结束