我有一个包含字符串的数组,该字符串可能包含附加到末尾的空格.我需要使用perl脚本删除这些空格.我的数组看起来像这样
@array = ("shayam "," Ram "," 24.0 ");
Run Code Online (Sandbox Code Playgroud)
我需要输出为
@array = ("shayam","Ram","24.0");
Run Code Online (Sandbox Code Playgroud)
我试过了chomp (@array).它不适用于字符串.
Zai*_*aid 35
基本问题围绕从字符串中删除前导和尾随空格,并且已经通过以下正则表达式替换(或其等价物)以某种形式或其他形式回答了多个线程:
s{^\s+|\s+$}{}g foreach @array;
Run Code Online (Sandbox Code Playgroud)
chomp数组将只删除尾随输入记录分隔符("\n"默认情况下).它不是为了删除尾随空格而设计的.
当您担心最终记录可能缺少其换行符时,它通常用于从输入记录的末尾删除换行符.在段落模式(
$/ = "")中,它从字符串中删除所有尾随换行符....
如果您选择一个列表,则会对每个元素进行选择,并返回已删除的字符总数.
小智 1
#!/usr/local/bin/perl -w
使用严格;
使用数据::转储器;
我的@array=('a', 'b', 'c');
我的@newarray = grep(s/\s*$//g, @array);
打印转储器\@newarray;
这里的关键函数是 grep(),其他的都只是演示。
| 归档时间: |
|
| 查看次数: |
28103 次 |
| 最近记录: |