首页 > 解决方案 > 从 PHP 到 Javascript 的正则表达式转换问题

问题描述

基本上,我不知道如何构建正则表达式,目前我正在使用 PHP 正则表达式

/^[\w\s'-\/\.\,\(\)\\\]{0,100}$/

但现在我想将此正则表达式转换为 Javascript 兼容的正则表达式。

如何使上述正则表达式在 Javascript 中兼容?

标签: javascriptregex

解决方案


反斜杠字符用于转义元字符。在集合中(方括号之间),您不需要转义大多数元字符。

这也可以:

^[\w\s'-/.,()\\]{0,100}$

在 PHP 中,您可以使用三个或四个反斜杠来转义一个反斜杠:

\\\- 转义反斜杠 (PHP)

\\\\- 还转义反斜杠 (PHP)

但请不要混搭,因为它会令人困惑并且容易发生意外。

使用 JavaScript,您必须用正好两个反斜杠来表示文字反斜杠。

\\- 转义反斜杠 (JS)

这是进一步的资源:https ://javascript.info/regexp-character-sets-and-ranges#no-escaping-in-

如果你有几个小时可以花时间,我在 Sam 的自学中学到了我所知道的关于正则表达式的大部分内容。该材料专注于 PCRE,但对 JS 也有 98% 的用处。你会更快乐;正则表达式很难。


推荐阅读