我使用tslint,当我在打字稿中写长regexp
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,}))$/;
Run Code Online (Sandbox Code Playgroud)
我收到错误 - 超过最大行长度140.
有人知道如何用2行写它.我可以用黑客做到这一点.但我对这个解决方案不满意.
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);
Run Code Online (Sandbox Code Playgroud)
为什么不使用字符串?
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 + r2);
Run Code Online (Sandbox Code Playgroud)
RegExp(string) 更容易修改和/或动态生成正则表达式
| 归档时间: |
|
| 查看次数: |
2229 次 |
| 最近记录: |