Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从PHP到Javascript的正则表达式转换问题_Javascript_Regex - Fatal编程技术网

从PHP到Javascript的正则表达式转换问题

从PHP到Javascript的正则表达式转换问题,javascript,regex,Javascript,Regex,基本上,我不知道如何构建正则表达式,目前我有 PHP正则表达式as /^[\w\s'-\/\.\,\(\)\\\]{0,100}$/ 但是现在我想把这个正则表达式转换成与Javascript兼容的正则表达式 如何使上述正则表达式在Javascript中兼容?正则表达式中的转义字符太多,除此之外,它应该可以工作 因此,这里有一个修改版本应该可以工作,尽管它是一个奇怪的正则表达式,总是匹配0到100个字符: /^[\w\s'-\/\.,\(\)\\]{0,100}$/ 反斜杠字符用于转义元字符。

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

/^[\w\s'-\/\.\,\(\)\\\]{0,100}$/
但是现在我想把这个正则表达式转换成与Javascript兼容的正则表达式


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

正则表达式中的转义字符太多,除此之外,它应该可以工作

因此,这里有一个修改版本应该可以工作,尽管它是一个奇怪的正则表达式,总是匹配0到100个字符:

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

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

这也可以:

^[\w\s'-/,()\\]{0100}$

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

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

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

但请不要混搭,因为这会让人困惑,而且容易出差错

使用JavaScript时,必须用两个反斜杠来表示文字反斜杠

\\
-转义反斜杠(JS)

以下是进一步的资源:


如果你有几个小时的时间,我通过Sam的“自学”学到了关于Regex的大部分知识。该材料侧重于PCRE,但对JS也有98%的用处。你会更快乐;正则表达式很难

用于从一个字符转换为另一个字符。仅供参考,您不需要转义字符类中的特殊字符,因此可能会丢失很多反斜杠