0

これは私のコードです

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);`

これは、「UK」または「USA」などの国コードの値を返しますが、比較できるように、この値を別の場所に保存されている国 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]);
}}

誰かがどこが間違っているかを見ていますか?

4

1 に答える 1

3

country には文字列が含まれています。たとえば、"UK" の場合、"U" または "K" の各文字を取得し、"UK" を "75" に置き換えようとしていますが、これは決して一致しません。

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

これはうまくいくはずです

于 2013-05-22T14:26:00.360 に答える