【发布时间】:2012-09-03 04:07:26
【问题描述】:
由于下面显示的正则表达式文字有些缺乏可读性,我想将其分成几行。我将如何做到这一点以及需要更改/转义什么?
regex = /\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/i;
谢谢
【问题讨论】:
-
你不能。我也怀疑它会增加可读性。
-
这个正则表达式实际上是做什么的?可能有可能更短并优化正则表达式
-
如果你准备好了,你可以只使用一个字符串和
RegExp构造函数,这可以让你将表达式分解为 "meaningful"部分......虽然,我必须说:看起来这个表达式将用于 HTML,在这种情况下:只需解析 DOM -
你能用评论来解释你的正则表达式是做什么的吗?另外,出于好奇,我想知道它的作用。
-
@starbeamrainbowlabs 这是我在某处发现的用于说明我的问题的 URL 验证的正则表达式。我认为它可能会更有效
标签: javascript regex literals