欢迎来到山村网

Perl删除前导和拖尾空白

2019-03-02 14:12:37浏览:855 来源:山村网   
核心摘要:  这篇文章主要介绍了Perl删除前导和拖尾空白(删除左右空格、空白字符),本文给出了多个方法实现解决这个需求,需要的朋友可以参

  这篇文章主要介绍了Perl删除前导和拖尾空白(删除左右空格、空白字符),本文给出了多个方法实现解决这个需求,需要的朋友可以参考下

  其它一些编程语言中,有函数ltrim和rtrim分别用于从字符串开头和末尾删除空格和制表符。 也有的提供了函数trim来删除字符串两端的空白字符。Perl里没这些函数因为简单的正则表达式替换就能实现这个目的(不过我确信CPAN有很多模块实现了这些函数)。事实上这太简单了以至于成了帕金森琐碎定理里的一个显著主题。

  左侧整理

  ltrim或者lstrip从字符串左侧删除空白字符:

  代码如下:

  $str =~ s/^s+//;

  从字符串开头^开始匹配一个或者多个空白字符(s+),并将之替换成空字符。

  右侧整理

  rtrim或者rstrip从字符串右侧删除空白字符:

  代码如下:

  $str =~ s/s+$//;

  匹配一个或者多个空白字符(s+)直到字符串末尾($),并将之替换成空字符。

  整理两端

  trim删除字符串两端的空白字符:

  代码如下:

  $str =~ s/^s+|s+$//g

  将上面两个正则表达式用或记号|连起来,并在最后增加/g用以全局地执行替换操作(反复多次)。

  封装在函数里

  如果你不想在代码中看到这些结构,你可以在代码里添加这些函数:

  代码如下:

  sub ltrim { my $s = shift; $s =~ s/^s+//; return $s };

  sub rtrim { my $s = shift; $s =~ s/s+$//; return $s };

  sub trim { my $s = shift; $s =~ s/^s+|s+$//g; return $s };

  使用时像这样:

  代码如下:

  my $z = " abc ";

  printf "<%S>

(责任编辑:豆豆)
下一篇:

Python字符串格式化

上一篇:

Perl学习笔记之文件操作

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com