2013-08-12 6 views
0

Я пытаюсь создать ulr, используя sprintf. Чтобы открыть различные веб-сайты, я изменил часть URL-адреса, используя sprintf. Теперь следующий код пишет в 3 раза, что URL-адрес был заменен частью URL-адреса? Любые предложения? Большое спасибо!Создание url с sprintf создает неправильный url

current_stock = 'AAPL'; 

current_url = sprintf('http://www.finviz.com/quote.ashx?t=%d&ty=c&ta=0&p=d',current_stock) 
web(current_url, '-browser') 

% d должно быть местом для рекламы. Результат:

http://www.finviz.com/quote.ashx?t=65&ty=c&ta=0&p=dhttp://www.finviz.com/quote.ashx?t=65&ty=c&ta=0&p=dhttp://www.finviz.com/quote.ashx?t=80&ty=c&ta=0&p=dhttp://www.finviz.com/quote.ashx?t=76&ty=c&ta=0&p=d 
+0

Возможно, вы опубликуете результат, который ожидаете? – fpe

ответ

3

Я не уверен, почему вы используете %d для значения, которое явно строка? Вы должны использовать %s.

Причина, по которой вы видите, что вы видите, это то, что она дает вам копию строки вашего формата для каждого символа в строке AAPL.

Вы можете видеть, что различия лежат исключительно в ?t=XX бите, с XX существами, в последовательности, 65, 65, 80 и 76, в ASCII-коде для четырех букв в строке:

        vv 
http://www.finviz.com/quote.ashx?t=65&ty=c&ta=0&p=d 
http://www.finviz.com/quote.ashx?t=65&ty=c&ta=0&p=d 
http://www.finviz.com/quote.ashx?t=80&ty=c&ta=0&p=d 
http://www.finviz.com/quote.ashx?t=76&ty=c&ta=0&p=d 
            ^^ 

Является ли это особенностью или ошибкой в ​​MatLab (a), я не мог сказать точно, но я подозреваю, что он исправит себя, если вы просто используете правильный спецификатор формата.


(а) Это скорее особенность, так как он делает так же интеллектуальный материал с другим несовпадением, согласно here:

Если применить преобразование строки (%s) для целочисленных значений, MATLAB преобразует значения, соответствующие действительным символьным кодам символам. Например, '%s' преобразует [65 66 67] в ABC.

+0

Большое спасибо за вашу помощь! –

0

Я бы за это легкий путь:

current_stock = 'AAPL'; 
current_url = ['http://www.finviz.com/quote.ashx?t=%d&ty=c&ta=0&p=d',current_stock]; 
web(current_url,'-browser') 

Это перенаправлены меня на правильный веб-страницы.

+0

Похоже, что Dominion Resources пикается, продает! –

Смежные вопросы