【发布时间】:2015-08-14 11:47:34
【问题描述】:
我有以下字符串:
my $str = 'ab cd q{ef gh '\"} ij';
我想将字符串拆分为:
$VAR1 = ['ab', 'cd', 'q{ef gh '\"}', 'ij'];
我已经使用了 parse_line() 来解析它:
my @arr = parse_line('\s+', 1, $str);
但是,由于输入字符串中的单引号没有转义,并且 parse_line() 无法解释 q() 运算符,所以我得到一个空数组作为输出。
确切地说,我想将引用字符串视为一个单词,而不管其内容如何。我能想到的唯一解决方案是编写一个可以解释引用的自定义函数-操作员。有什么简单的方法可以实现吗?
谢谢!
【问题讨论】:
-
我认为你放错了反斜杠
ab cd q{ef gh \'"} ij'