作者kornelius (c9s)
看板Perl
标题Re: [问题] 如何把utf8所有的标点符号取代掉?
时间Tue Apr 21 18:50:39 2009
does this solve your problem ?
use utf8;
my $str = 'bbbb-=,;aaaa,。aaaa';
$str =~ s/\p{IsPunct}//g;
※ 引述《piglon (宣)》之铭言:
: ※ 引述《piglon (宣)》之铭言:
: : 如题
: : 我已经爬了文
: : 似乎没有一个适当的解答
: : 还是我不会用/p{P}
: : 以下是我的写法
: : $abstract =~ s/\p{P}\p{Pc}\p{Pd}\p{Ps}\p{Pe}\p{Po}/#/g;
: 可能我没有说清楚
: 我现在想要把$abstract中所有的标点符号用#字号取代只剩下中文字
: 英文及数字都去除
: 看了之前的文章 可以使用\p{P} 可是出来的结果却还有全型的"。"之类的符号
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.248.114.130
1F:推 piglon:我取代为# 他的上下文出现乱码 且全型句号及半形逗点还在 04/21 19:09
2F:→ kornelius:你有用 use utf8 吗? 04/21 19:55
3F:→ kornelius:请确定你存档的格式为 utf8 04/21 19:55
4F:→ kornelius:it works for me 04/21 19:55
5F:推 piglon:没错程式码跟读进来的档案都是utf8 04/21 20:14
6F:→ kornelius:are you using perl5.10 or perl5.8 ? 04/21 20:16
7F:推 piglon:我是用perl5.10 04/21 20:24
8F:推 piglon:我写了另一支程式测试是可以的 应该是我输入有问题 04/21 20:36
9F:→ kornelius:应该是你的 input 非 utf8. 04/21 20:42
10F:→ kornelius:please use Encode module. 04/21 20:42
11F:推 piglon:不好意思我不会使用Encode module 虽然有人做笔记但看不懂 04/21 22:00
12F:推 piglon:我输入的档案用笔记本打开是utf8可是却又比对不到= = 04/21 22:31