作者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