将 space 或逗号分隔的字符串拆分为 perl 中的列表

To split a space or comma seperated string into a list in perl

案例: 我有一个字符串 $str = "a, b , c" 如何拆分字符串以获得列表? 我能想到的拆分表达式是:

  1. split('[,\s]+', $str)
  2. split(/,/, $techoptionGiven);

期望的行为 @array = [abc]

您的第一个选项似乎可行:

#!/usr/bin/perl

use strict;
use warnings;
use feature 'say';

use Data::Dumper;

my $str = "a, b , c";

say Dumper split('[,\s]+', $str);

输出:

$VAR1 = 'a';
$VAR2 = 'b';
$VAR3 = 'c';

就我个人而言,我想强调一个事实,即 split() 的第一个参数是正则表达式,而不是字符串。

say Dumper split(/[,\s]+/, $str);