【发布时间】:2016-06-06 15:03:38
【问题描述】:
我使用 tslint,当我在 typescript 中编写长正则表达式时
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
我收到错误 - 超过 140 的最大行长。
有没有人知道怎么写成两行。我可以通过 hack 做到这一点。但我对这个解决方案并不满意。
var r1 = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))/;
var r2 = /@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
var re = new RegExp(r1.source + r2.source);
【问题讨论】:
-
这与 Angular2 有什么关系?
-
同时检查 Casimir's comment 是否有类似的电子邮件验证正则表达式。
-
我使用 angular2-seed 样板应用程序。并且 tslint 设置已预先设置在那里。
-
是的,这是重复的How to split a long regular expression into multiple lines in JavaScript? 我仍然希望存在更优雅的解决方案
标签: regex typescript