【问题标题】:Access first part of hash value? [closed]访问哈希值的第一部分? [关闭]
【发布时间】:2016-06-14 04:54:54
【问题描述】:

我有一个如下所示的哈希:

my %parameters= (
RamSize => "1000"
PageSize => "200, 200"
SysClock => "1"
);

我需要访问此哈希的 PageSize id,但我需要分别访问 200 和 200 而不是“200, 200”。我无法更改输入方式,那么以 200 访问它的最简单方法是什么?

【问题讨论】:

  • 这不是有效的 Perl。请修复!

标签: perl hash


【解决方案1】:

你写的不是有效的 Perl。你的哈希大概是这样的

my %parameters = (
    RamSize  => "1000",
    PageSize => "200, 200",
    SysClock => "1",
);

元素$parameters{PageSize} 是一个简单的字符串,您必须显式处理它以从中提取子字符串。

不清楚在一般情况下您可能需要什么,但如果您只是想要字符串中出现的所有整数值,那么全局正则表达式匹配将为您完成。像这样

my ($ps1, $ps2) = $parameters{PageSize} =~ /\d+/g;

say $ps1;
say $ps2;

输出

200
200

【讨论】:

    【解决方案2】:

    您发布的内容没有意义。我假设你实际上有以下内容:

    my %parameters = (
        RamSize  => "1000",
        PageSize => "200, 200",
        SysClock => "1",
    );
    

    如果是这样,您可以使用以下内容:

    my ($x, $y) = split /\s*,\s*/, $parameters{PageSize};
    

    【讨论】:

      猜你喜欢
      • 2013-10-11
      • 2013-06-06
      • 2015-11-09
      • 2023-03-31
      • 2014-05-06
      • 1970-01-01
      • 2013-03-22
      • 1970-01-01
      • 2021-01-18
      相关资源
      最近更新 更多