Javascript 替换未按预期工作

标签 javascript replace

这是我的代码

var tmp = document.body.outerHTML.match(/<b>Location: <\/b>([^,]+),([^,]+),([^,])([^\s]+) <br>/i);
DataExtractor.AddHeader(14, 'id_country');
  var country
    if( tmp ){country = tmp[1]
   }
  else{alert('country is not set')} 
DataExtractor.AddResult(14, country);`

这将返回“英国”或“美国”的值或任何国家/地区代码,但我需要替换该值以与存储在其他地方的国家/地区 ID 相对应,以便可以对它们进行比较。因此,我需要能够告诉这段代码将 UK 值替换为 75。我已经尝试了以下方法,但它不起作用。

var tmp = document.body.outerHTML.match(/<b>Location: <\/b>([^,]+),([^,]+),([^,])([^\s]+) <br>/i);
DataExtractor.AddHeader(14, 'id_country');
  var country
    if( tmp ){country = tmp[1]
    if (country){
      for (var i = 0; i < country.length; i++) {
      country[i] = country[i].replace("UK","75")
}
    else{alert('country is not set')}
DataExtractor.AddResult(14, country[i]);
}}

有人看出哪里出了问题吗?

最佳答案

国家/地区包含一个字符串 - 例如“UK”,然后您将其每个字符“U”或“K”并尝试将“UK”替换为“75”,而“75”永远不会匹配。

if (country){
    country = country.replace("UK","75")
}

这应该有效

关于Javascript 替换未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16693339/

相关文章:

javascript - 写入时验证输入字段

Javascript 使用哈希值重新加载页面

javascript - HTML Canvas Animate 折叠三 Angular 形

mysql - 在数据库中插入或替换值

java - 如何从字符串中删除匹配的单词

python - 请问,为什么我的代码中 "Popcorn"没有被 "Coke"替换?

javascript - 将 JSON 文件转换为 Javascript 对象

javascript - 函数未作为函数传递

java - 删除大型 Java 字符串的部分(它包含 HTML 源代码)

r - 如何使用包含两种语言的单独数据框将语言 1 中的单个单词替换为语言 2 中的单词?