正则表达式和javascript替换不匹配的字符串
这是我的浏览器控制台中的代码,应该可以工作,但实际上不行:正则表达式和javascript替换不匹配的字符串,javascript,regex,Javascript,Regex,这是我的浏览器控制台中的代码,应该可以工作,但实际上不行: > a = "13,50" "13,50" > regex = new RegExp(",50\\z") /,50\z/ > a.replace(regex,"") "13,50" 我在测试同样的东西,它和“50”匹配 你知道为什么这不起作用吗?? 谢谢JavaScript中没有\z锚。您可以改为使用\b或$ 在大多数语言中,\z锚点用作字符串结尾的锚点,在语言中引入锚点是因为启用多行模式时,$可以匹配行尾而不是字符
> a = "13,50"
"13,50"
> regex = new RegExp(",50\\z")
/,50\z/
> a.replace(regex,"")
"13,50"
我在测试同样的东西,它和“50”匹配
你知道为什么这不起作用吗??
谢谢JavaScript中没有
\z
锚。您可以改为使用\b
或$
在大多数语言中,\z
锚点用作字符串结尾的锚点,在语言中引入锚点是因为启用多行模式时,$
可以匹配行尾而不是字符串结尾
因此,当您不打开多行模式时,
$
和\z
完全匹配相同的内容。JavaScript中没有\z
锚定。您可以改为使用\b
或$
在大多数语言中,\z
锚点用作字符串结尾的锚点,在语言中引入锚点是因为启用多行模式时,$
可以匹配行尾而不是字符串结尾
因此,
$
和\z
在不打开多行模式时完全匹配相同的内容。谢谢!我使用了Ruby的RegEx引用。为什么不能在所有语言中都相同??谢谢anyway@UriKlar不客气,与其他更复杂的风格(如PHP、Perl、.NET)相比,JavaScript的正则表达式风格有点有限。。。等等。@UriKlar您可以在测试正则表达式并查看以供参考。@UriKlar不幸的是,正则表达式并没有过度标准化,但在大多数情况下,它相当不错。关键是要阅读所用语言的文档。即使只是简单地看一下所有的额外功能、缺少的功能和不同的名称!我使用了Ruby的RegEx引用。为什么不能在所有语言中都相同??谢谢anyway@UriKlar不客气,与其他更复杂的风格(如PHP、Perl、.NET)相比,JavaScript的正则表达式风格有点有限。。。等等。@UriKlar您可以在测试正则表达式并查看以供参考。@UriKlar不幸的是,正则表达式并没有过度标准化,但在大多数情况下,它相当不错。关键是要阅读所用语言的文档。即使只是简单地看一下所有额外的特性,缺少的特性,以及测试JavaScript正则表达式的不同名称,您可能想使用它来测试JavaScript正则表达式,您可能想使用