作者Yaowei (開心)
看板perl
標題Re: [問題] 常規表示式的比對問題?
時間Sun Apr 8 16:42:10 2007
承接本題目
若轉換後 由於 分成
212 122 221
而一個句子中經過$list轉換後有可能會出現是
2122 -->表示有可能是
212或
122
2212 -->表示有可能是
221或
212
1221 -->表示有可能是
122或
221
2112 -->表示有可能是
221或
112
2212 -->表示有可能是
221或
212
1221 -->表示有可能是
122或
221
若我想將這些片段取來及其相對應的組別
應該可以用perl來達到吧@@
有人有什麼不錯的方式嗎^^
因為若是用原本的程式跑的話 只是先比到第一個符合的就秀出分組
我有想過用while(/(212|122)/g) @@但若是降子的話則不就要改一大堆了@@
※ 引述《fuu0115 (充實計劃啟動)》之銘言:
: 給你參考看看!
: 利用一些取代把那些ACT, PTN取代成一個符號,
: 然後就可以利用一些規則把pattern過濾出來。
: #!/usr/bin/perl -w
: use strict;
: open FH, "<$ARGV[0]" or die "file open fail:$!";
: while (my $thisLine = <FH>) {
: if ($thisLine eq "") {
: next;
: }
: $thisLine =~ s{\s+$}{};
: my $list;
: while ($thisLine =~ m{(ACT|PTN)}g){
: $list .= $1;
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.165.150
→ Yaowei:若使用index與搭配212 122 221的陣列來找出其位置 04/08 18:49
→ Yaowei:不知道是否可行呢@@? 04/08 18:50
→ fuu0115:用3個if判斷就可以達到你的需求了 04/08 20:39