【问题标题】:How to get certain parts of a perl hash如何获取 perl 哈希的某些部分
【发布时间】:2012-05-14 20:34:01
【问题描述】:

我正在学习 perl 并使用 Weather::NOAA::Alert,我想弄清楚如何仅捕获其输出的特定部分。

它输出一个哈希,但我只想要某个部分,例如紧急部分......我该怎么办?

Sample output

【问题讨论】:

  • 也许你应该发布一些示例代码和输出,这样我们就不必查找文档来寻找输出数组的东西了?
  • 那不是数组,那是哈希。您可以使用 for my $key (keys %$hashref) { print Dumper $hashref->{$key} ... 循环遍历键并重复,直到您知道如何达到您寻求的值
  • @TLP - 哈希的 url 部分是随机的......有没有办法弥补这一点?
  • 我怀疑它的“随机性”。不管它是什么,您都可以使用keys 函数访问它。只是嵌套循环。
  • @ZacharyLassiter - 您要访问哪个特定的哈希?例如。您试图在 Perl 中实现的逻辑是什么?

标签: perl data-structures hash


【解决方案1】:

它不是数组,而是散列的散列。您可以通过

访问值
$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 哈希的介绍。

【讨论】:

  • 这是沿着正确的路径,但其随机的 URL 部分......我如何补偿随机性?通配符是一种选择吗?
  • 正如我所说,您应该阅读有关 Perl 哈希的信息,但无论如何您都可以使用 keys 函数来检索哈希的所有键:keys $result->{'US'} 将列出所有键。
猜你喜欢
  • 2010-11-02
  • 2021-12-30
  • 2013-02-12
  • 2016-07-22
  • 1970-01-01
  • 1970-01-01
  • 2021-04-17
  • 2012-09-01
  • 1970-01-01
相关资源
最近更新 更多