gpt4 book ai didi

Javascript 替换未转义的斜杠

转载 作者:太空宇宙 更新时间:2023-11-04 02:54:07 24 4
gpt4 key购买 nike

我想用反斜杠替换字符串中的未转义斜杠。但奇怪的事情发生了:

"\content\hs\gj\home.css".replace(/\\/gi,"/")

返回“contenthsgjhome.css”。我明白如果将其更改为

"\\content\\hs\\gj\\home.css".replace(/\\/gi,"/")`

然后它将按预期工作,但我无法更改字符串,因为它只是 nodejs path.join("conetnt", "hs", "gj", "home.css") 的输出

我应该做什么?

最佳答案

它返回 "contenthsgjhome.css" 的原因是您的字符串中根本没有任何反斜杠,因为字符串文字中的单个反斜杠将被忽略,除非它们可以转义后面的字符(例如 "\\""\n")。 "\c" 作为转义符没有特殊含义,因此它被解释为 "c"

"\content\hs\gj\home.css"

最终结果相同:

"contenthsgjhome.css"

因此 .replace() 找不到反斜杠。

(请注意,如果您确实在像 "\\" 这样的字符串文字中转义了反斜杠,它只是文字语法的一部分,并且一旦解释,结果字符串就只有一个反斜杠 "\"。)

也许如果你能解释一下“这只是 FS 的输出”的意思,有人可以提供更多建议。这是 JSP/ASP/PHP/etc 输出 JS 代码时的常见问题 - 在 JS 解释器看到它之前,需要在 JSP/ASP/PHP/etc 代码中进行转义。

关于Javascript 替换未转义的斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10749461/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com