免费注册 查看新帖 |

Chinaunix

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

Perl去除字符串标量中存在的escape sequence code [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-05-15 14:28 |只看该作者 |倒序浏览
存在一个标量$str,这个标量中左边和右边都存在类似设置背景颜色的escape sequence code,如何根据escape sequence code的特征并将其截掉

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2012-05-15 14:32 |只看该作者
  1. $str =~ s/[^[:ascii:]]//g;
复制代码

论坛徽章:
0
3 [报告]
发表于 2012-05-15 15:31 |只看该作者
py 发表于 2012-05-15 14:32

[[:ascii:]]是匹配什么啊?这样测试了下,标量为空了

论坛徽章:
0
4 [报告]
发表于 2012-05-15 16:01 |只看该作者
py 发表于 2012-05-15 14:32

实际情况是:
  1.   ---- More ----                                           radius-server shared-key ZJradius!$&
  2.                                            radius-server retransmit 2 timeout 3
复制代码

论坛徽章:
1
CU十二周年纪念徽章
日期:2013-10-24 15:41:34
5 [报告]
发表于 2012-05-15 16:56 |只看该作者
这个好像很麻烦

论坛徽章:
0
6 [报告]
发表于 2012-05-15 17:40 |只看该作者
刚刚试了一下. 可以去除这样的字符  \uffff. 拷贝过来可能已经走样了.不知道你们能不能看懂.
这是一个很有意思的话题. 在文本处理中经常会碰到这样的不可见字符的问题.
求Best Practice.  

论坛徽章:
2
射手座
日期:2014-10-10 15:59:4715-16赛季CBA联赛之上海
日期:2016-03-03 10:27:14
7 [报告]
发表于 2012-05-16 02:40 |只看该作者
回复 1# Jeffymail2008

  1.     cat -A 看下是什么样?
  2.     试试:
  3.      s/^[\[\d+.//g  # ^[是Ctrl+V 加 [
  4.    
复制代码

论坛徽章:
0
8 [报告]
发表于 2012-05-17 16:49 |只看该作者
本帖最后由 sellie 于 2012-05-17 16:50 编辑

回复 2# py

py能解析一下这个正则表达式的意思吗?   $str =~ s/[^[:ascii:]]//g;


   

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
9 [报告]
发表于 2012-05-17 17:41 |只看该作者
替换掉$str中所有非ascii码字符

论坛徽章:
0
10 [报告]
发表于 2012-05-18 13:56 |只看该作者
py 发表于 2012-05-17 17:41
替换掉$str中所有非ascii码字符


基本上是说了等于没说.那我问的再具体点吧.
外面这一对括号 [^  ] 我能理解. 不匹配集合中的任何一个字符.
[:ascii:] 但是这个表述不是很理解,第一次啊看到,能引用一下出处或解释一下吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP