Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Ошибка при обработке данных курса валют
 
 автор: zahtet   (25.09.2009 в 19:52)   письмо автору
 
 

Не могу понять в чем проблема. Загружаю XML документ вида:

<Valute ID="R01010">
    <NumCode>036</NumCode>
    <CharCode>AUD</CharCode>
    <Nominal>1</Nominal>
    <Name>Австралийский доллар</Name>
    <Value>26,2763</Value>
</Valute>


И вытаскиваю данные с помощью выражения:

preg_match_all('|<Valute ID="([^"]+)">
    <NumCode>([^<]+)</NumCode>
    <CharCode>([^<]+)</CharCode>
    <Nominal>([^<]+)</Nominal>
    <Name>([^<]+)</Name>
    <Value>([^<]+)</Value>
</Valute>|isU', $xml_quotes, $quotes_results, PREG_SET_ORDER);

где, $xml_quotes - исходный xml документ, а $quotes_results массив результата обработки естественно.

Но в итоге массив результата получается пустым.В чем проблема, в рег. выражении или в другом?

  Ответить  
 
 автор: cheops   (25.09.2009 в 20:13)   письмо автору
 
   для: zahtet   (25.09.2009 в 19:52)
 

Лучше не рисковать и исключить все пробелы и табуляции, как таковые, т.е. поступить примерно так
<?php
$pattern 
'|<Valute ID="([^"]+)">[\s]*'.
           
'<NumCode>([^<]+)</NumCode>[\s]*'.
           
'<CharCode>([^<]+)</CharCode>[\s]*'.
           
'<Nominal>([^<]+)</Nominal>[\s]*'.
           
'<Name>([^<]+)</Name>[\s]*'.
           
'<Value>([^<]+)</Value>[\s]*'.
           
'</Valute>|isU';
preg_match_all($pattern$xml_quotes$quotes_resultsPREG_SET_ORDER);
?>

  Ответить  
 
 автор: ZAHTET   (25.09.2009 в 20:46)   письмо автору
 
   для: cheops   (25.09.2009 в 20:13)
 

Огромное вам спасибо) Все заработало)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования