关于javascript和php正则表达式之间差异的反馈

关于javascript和php正则表达式之间差异的反馈,php,javascript,regex,Php,Javascript,Regex,我已经对JavaScript和PHP正则表达式之间的差异进行了一些测试,“我相信”以下两个表达式几乎完全相同,但在我将它们添加到生产代码之前,我想请这里的专家确认这一点 PHP版本 preg_replace('/[^a-zA-Z0-9\.\-\_]/', '_', $str); str.replace(/[^a-zA-Z\d\.\-\_]/g, "_"); JavaScript版本 preg_replace('/[^a-zA-Z0-9\.\-\_]/', '_', $str); str.r

我已经对JavaScript和PHP正则表达式之间的差异进行了一些测试,“我相信”以下两个表达式几乎完全相同,但在我将它们添加到生产代码之前,我想请这里的专家确认这一点

PHP版本

preg_replace('/[^a-zA-Z0-9\.\-\_]/', '_', $str);
str.replace(/[^a-zA-Z\d\.\-\_]/g, "_");
JavaScript版本

preg_replace('/[^a-zA-Z0-9\.\-\_]/', '_', $str);
str.replace(/[^a-zA-Z\d\.\-\_]/g, "_");
Thx,

Dave Keltz是的,它们在功能上完全相同。当然,您可以将两者缩短为:

/[^\w\.-]/


我说的是miniteck这样的功能,但并没有指出它们是如何格式化的。谢谢回复tho。对不起,我认为我对PHP语法的理解是错误的,所以我会删除我之前的评论,这样就不会让人们误入歧途。Thx,我很确定他们是这样的,但我只是需要比我更了解PHP语法的人来确认。至于缩短时间,我有点喜欢它现在的样子,因为如果我以后不需要编辑它,我会更容易理解。