作者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
1F:→ Yaowei:若使用index与搭配212 122 221的阵列来找出其位置 04/08 18:49
2F:→ Yaowei:不知道是否可行呢@@? 04/08 18:50
3F:→ fuu0115:用3个if判断就可以达到你的需求了 04/08 20:39