2012-05-05 2 views
0

Я изучаю perl и использую Weather::NOAA::Alert и хочу выяснить, как захватить только определенную часть его вывода.Как получить определенные части хэша perl

Он выводит хэш, но мне нужна только определенная часть, например часть срочности ... что мне делать?

Sample output

+1

Возможно, вам следует опубликовать некоторый пример кода и вывода, так что нам не нужно искать документацию в поисках вещей, которые выводят массивы? – TLP

+0

@TLP добавил вывод –

+0

Это не массив, это хэш. Вы можете прокручивать ключи с помощью 'для моего ключа $ (ключи% $ hashref) {print Dumper $ hashref -> {$ key} ...' Промыть и повторить, пока вы не узнаете, как достичь желаемого значения – TLP

ответ

2

Это не массив хэш хэшей хэшей. Вы можете получить доступ к значениям по

$result->{'US'}->{'http://alerts.weather.gov/cap/wwacapget.php?x=MT124CAB8F109C.WinterWeatherAdvisory.124CAB90FBA0MT.TFXWSWTFX.c906fc319cc9f5b747e95ac455f8c2f0'}->{'certainty'} 

будет содержать строку

Likely 

Проверить http://www.cs.mcgill.ca/~abatko/computers/programming/perl/howto/hash/ для внедрения на Perl хэши.

+0

это по правильному пути, но URL-адрес его случайного ... как я могу компенсировать случайность? Возможны ли подстановочные знаки? –

+0

Как я уже говорил, вы должны прочитать о хэшах Perl, но в любом случае вы можете использовать функцию 'keys' для извлечения всех ключей хэша:' keys $ result -> {'US'} 'перечисляет вам все ключи , – Matteo

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