EN
скрипт его извлекает. Но если ни одного числа не доступно - он
возвращает ошибку и не исполняется. А есть желание чтобы он возвращал ноль.
Почитал в интернете про проблему - пишут про lastIndex и флаг g - но
как-то не получилось использовать.
function test(){
//var result = GetStock("0P0000ZROQ") //TypeError: Не удается прочитать свойство "1" объекта null. (строка 18, файл test)
var result = GetStock("0P00006PUS") //работает
Logger.log(result)
}
function GetStock(ISIN) {
var url =
'http://www.morningstar.co.uk/uk/etf/snapshot/snapshot.aspx?id='+ISIN;
var html = UrlFetchApp.fetch(url).getContentText();
var searchstring2 = '5 Years Annualised</td><td class="value number">';
var index2 = html.search(searchstring2);
if (index2 >= 0) {
var pos2 = index2 + searchstring2.length
var rate2 = html.substring(pos2, pos2 + 18);
Logger.log(rate2)
var regExp2 = new RegExp("((\\d+|\\d{1,3}(?:[.]\\d{5})).\\d+)");
var rate2 = regExp2.exec(rate2)[1];
rate2 = +rate2; //перевод в число
return rate2
}
}





