Perl中如何将空格分隔字符串转换为带引号的逗号分隔格式?
解决Perl中空格分隔字符串的格式化问题
要得到你想要的带引号的分隔格式,按以下步骤处理即可:
- 拆分字符串为数组:用
split将空格分隔的字符串拆成单个元素的数组,用/\s+/作为分隔符可兼容多个连续空格的场景。 - 为每个元素添加引号:通过
map遍历数组,给每个元素包裹双引号。 - 拼接成目标格式:用
join把带引号的元素用", "连接起来。
完整代码示例:
my $string = $q->param("us1"); # 输入内容为 +book +dog +cat my @parts = split /\s+/, $string; my $formatted = join(', ', map { qq{"$_"} } @parts); print $formatted . "\n";
执行后会输出:
"+book", "+dog", "+cat"
如果输入字符串首尾可能存在空格,可先通过$string =~ s/^\s+|\s+$//g;去除首尾空格,避免分割出空元素。
内容的提问来源于stack exchange,提问作者mike joe
相关产品推荐
相关产品推荐

