javascript - 为什么 String.prototype.replace 从我的字符串中删除 "$' "?

标签 javascript ios string replace automation

我没有使用 JQuery,所以我不认为这是造成问题的原因。我首先使用 iOS 自动化工具遇到了这个问题,然后使用 JSFiddle 对其进行了验证。如果有人能告诉我解决这个问题的方法,那就太棒了。

var str = "<'pass!23$'>";
var str1 = str.replace("<'pass!23$'>", "'pass!23$'");
var str2 = str.replace("<'pass!23$'>", "'pass!23$a'");

这是 fiddle :http://jsfiddle.net/adUtw/

这让我很困惑!

最佳答案

如果您查看 string.replace at MDN 的文档,您会注意到单独的 $ 对替换有一些特殊的含义。因此,如果你想插入一个$,你需要使用$$

您的替换语句将如下所示:

var str1 = str.replace("<'pass!23$'>", "'pass!23$$'");

您可以通过更新 Fiddle 来验证它是否正常工作。

关于javascript - 为什么 String.prototype.replace 从我的字符串中删除 "$' "?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24686717/

相关文章:

c# - 字符串 ToUpper() 函数与 ToString()

javascript - 正则表达式精确数字且仅限正数

ios - 是否有可能在设备上安装 iOS 应用程序后将资源加载到它?

javascript - 只允许数字和一位小数

iphone - iOS AVPlayer 流媒体音乐问题

ios - Swift 中特殊的 JSON 解析

java - 在每个第 n 个字符处拆分一个字符串

string - 为什么我应该使用 SendStr(通过 &str 或 String)作为 Rust 中 Error 结构的消息属性?

javascript - 在javascript中获取DIV的宽度和高度

javascript - 无法调用其类型缺少函数返回已解决 promise 的调用签名的表达式