免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4015 | 回复: 9
打印 上一主题 下一主题

perl 正则 怎么去双引号和空格 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-05-31 12:50 |只看该作者 |倒序浏览
"2F3-7T71-HT-53G7  "怎么去掉双引号和空格?
要求:
先去双引号,再去空格!

我试过下面的方法,好像是先去首空格,再去尾空格
  1. sub trim {
  2.     my $string = shift;               
  3.     $string =~ s/^\s+/ /g;
  4.     print "str-> $string";
  5.     #$string =~ s/\s+$//;
  6.    
  7.     return $string;
  8. }
复制代码


论坛徽章:
0
2 [报告]
发表于 2013-05-31 12:59 |只看该作者
  1. $text = qq("2F3-7T71-HT-53G7  ");
  2.     $text =~ s/"//g;
  3.     $text =~ s/\s+//g;
  4.     print $text;
复制代码

论坛徽章:
0
3 [报告]
发表于 2013-05-31 13:06 |只看该作者
lhohoz 发表于 2013-05-31 12:59

$text =~ s/\s+//g;

是不是匹配了开始和结束的空格(^和$)?

论坛徽章:
0
4 [报告]
发表于 2013-05-31 13:10 |只看该作者
lhohoz 发表于 2013-05-31 12:59


$text =~ s/"//g;


可以直接写双引号?


双引号没有对应的结束的双引号。。。不久乱了?

论坛徽章:
0
5 [报告]
发表于 2013-05-31 13:16 |只看该作者

论坛徽章:
0
6 [报告]
发表于 2013-05-31 13:16 |只看该作者
回复 3# cups_book


    是的,不管出现在开头,中间还是结尾只要出现空格就匹配

论坛徽章:
0
7 [报告]
发表于 2013-05-31 13:48 |只看该作者
本帖最后由 cups_book 于 2013-05-31 13:54 编辑

windows系统。
那如果字符串里还包含不可见的换行符,怎么去掉?


空白元字符:
\s   匹配空白符,如 空格、制表符和换行符
\n   匹配换行符或行末符
\r   匹配回车符
\t   匹配制表符
\f   匹配进纸符

论坛徽章:
0
8 [报告]
发表于 2013-05-31 14:01 |只看该作者
回复 7# cups_book


    能举个例子么

论坛徽章:
0
9 [报告]
发表于 2013-05-31 15:57 |只看该作者
回复 8# lhohoz


   $str_in=~s/\r+//g;

论坛徽章:
13
丑牛
日期:2013-08-16 15:08:22技术图书徽章
日期:2013-11-26 10:13:40双鱼座
日期:2013-11-08 15:03:26戌狗
日期:2013-11-08 13:52:30技术图书徽章
日期:2013-11-05 14:06:30戌狗
日期:2013-10-31 11:45:42CU十二周年纪念徽章
日期:2013-10-24 15:41:34天秤座
日期:2013-10-11 14:55:08子鼠
日期:2013-09-26 19:36:35水瓶座
日期:2013-09-26 17:44:56午马
日期:2013-08-26 10:24:23丑牛
日期:2013-08-19 14:43:22
10 [报告]
发表于 2013-05-31 16:47 |只看该作者
  1. sed -r 's/"//g;s/\s+//g'
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP