作者sweetwords (米虫三號)
看板Perl
標題[問題] 中文比對
時間Thu Jun 5 12:28:51 2008
我是用 big5 模式下編寫,然後再用支程式去轉成 utf8 格式
這支程式主要是比對是否有相關字然後做後續的動作
可是當我下中文這個判斷的時候
if($insert_rolec =~/.指.*/) code
print $insert_rolec;
我主要想法是,字串中出現「指」這個字就將這個字列印出來
可是怎麼跑都不會跑到下列去
我也有試過把這個變數,跟我想要的字拿來直接做比對
例如
if($insert_rolec eq '指導教授')
可是一樣不能 orz"
請問這大概是啥問題呢?
亦或是我比對那邊寫得不對或是有誤 ._.?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.194.56
1F:推 travellu:試試 \Q指\E 06/05 14:16
2F:→ sweetwords:1.if($insert_rolec =~m{/Q指導教授/E}) 06/05 15:17
3F:→ sweetwords:2.if($insert_rolec =~/\Q指\E/) 06/05 15:18
4F:→ sweetwords:上面這兩個方法我去跑過了都不行說 orz" 06/05 15:18
5F:推 travellu:變數$insert_rolec真的有'指'? 06/05 15:31
6F:→ sweetwords:有啊,我呈現部分看得到抓出來有這些字 06/05 15:34
7F:→ sweetwords:可是判斷下面的就是就是沒辦法去跑過 orz" 06/05 15:35
8F:推 travellu:編碼都一樣? 06/05 15:43
※ 編輯: sweetwords 來自: 140.117.147.44 (06/05 15:46)
9F:→ sweetwords:我程式可能表達的不好 該是說 我後面是要去做其他處理 06/05 15:47
10F:→ sweetwords:可是 if 後續那些動作都沒有去做 但是 $insert_rolec 06/05 15:48
11F:→ sweetwords:印出來有指導教授這幾個字 '-' 06/05 15:48
12F:→ sweetwords:編碼上我有用資料庫去把這些抓到的資料存進去 06/05 15:51
13F:→ sweetwords:在 utf8 的型態下,還是可以看到指導教授這幾個字 '-' 06/05 15:52
14F:推 jlovet:/.指.*/ 你的pattern只會match a指xxx b指xxx 不是所有有指 06/05 19:58
15F:→ sweetwords:敢請樓上賜教 感恩 <0> 06/05 22:12
16F:推 david220:字串中是否出現「指」,用if($insert_rolec =~/指/)就好 06/06 00:43
17F:→ jlovet:sorry我說錯了,應該是說你那樣,指前面就一定要隨便有東西 06/06 01:03