|
1
158
扩展@KooiInc的答案,您可以使用
示例:
或者如果你想避免重复
在ES6中,映射函数可以简化为:
|
|
|
2
140
[ 编辑2022/08 ]创建了一个小 github repository 创建带有空格、注释和模板的正则表达式。
您可以将其转换为字符串,并通过调用
注意事项:
[ 添加ES20xx (标记模板)] 在ES20xx中,您可以使用 tagged templates 。请参阅片段。 注:
|
|
|
3
33
在中使用字符串
让我们拆分这个正则表达式
我们稍后将使用一个函数使事物更加美丽
现在让我们摇滚
由于这是有成本的,所以尝试只构建一次真正的正则表达式,然后使用它。 |
|
|
4
17
感谢神奇的世界 template literals 你现在可以写大的,多行,评论良好, 甚至在语义上嵌套 ES6中的正则表达式。
使用它,您现在可以像这样编写正则表达式:
输出
输出
好吧,“来点更复杂的吧?”
它输出
用一个小演示来运行它?
成功输出
请注意已成功捕获带引号的字符串。
如果
curious you can checkout what I was doing
和
its demonstration
。
|
|
|
5
11
这里有很好的答案,但为了完整起见,有人应该提到Javascript的核心特性继承 prototype chain 。这样的东西说明了这个想法:
|
|
|
6
6
上面的正则表达式缺少一些无法正常工作的黑斜杠。所以,我编辑了正则表达式。请考虑这个正则表达式,它可以99.99%地用于电子邮件验证。
|
|
|
7
2
避开阵列
|
|
8
2
您可以简单地使用字符串操作。
|
|
|
9
2
我试图通过封装所有内容并实现对拆分捕获组和字符集的支持来改进korun的答案,使这种方法更加通用。
要使用此代码段,您需要调用variadic函数
捕获组不能以这种方式直接拆分,因为它只会留下一个括号。您的浏览器将出现异常而失败。
相反,我只是在数组中传递捕获组的内容。括号是在以下情况下自动添加的
此外,量词需要跟在某物后面。如果由于某种原因,正则表达式需要在量词前面拆分,则需要添加一对括号。这些将自动删除。重点是,一个空的捕获组是非常无用的,这样量词就有了可参考的东西(
最好用一个简单的例子来解释这一点:
将变成:
如果必须拆分角色集,则可以使用对象(
以下是片段和更完整的示例:
|
|
|
10
1
就我个人而言,我会选择一个不那么复杂的正则表达式:
当然,少一点 精确的 比你目前的模式,但你试图实现什么?您是在试图捕捉用户可能输入的意外错误,还是担心用户可能试图输入无效地址?如果是第一种,我会选择更简单的模式。如果是后者,通过回复发送到该地址的电子邮件进行一些验证可能是更好的选择。 然而,如果你想使用当前的模式,通过从更小的子模式构建它(IMO)会更容易阅读(和维护!),如下所示:
|
|
|
11
1
@哈什布朗很棒 answer 让我走上正轨。这是我的版本,也是受此启发 blog 。
这样使用:
创建此
|
|
|
Aarish Ramesh · 在java中写入csv文件 12 年前 |