推 AutumnVic:真的有用!! 因為是初學者還學到了變數的使用 thanks ;D 12/20 09:43
※ 引述《AlanSung (慈母多敗兒)》之銘言:
: ※ 引述《AutumnVic (小點點雨傘兒)》之銘言:
: : 我現在要做的事
: : 是要從很多像這樣的字串中
: : ((((((.(((.((((..((((...........))))..)))))..........))...))))))...
: : ........(((((..(((((((..(((.....)))))..))......)))))..)))...
: : 挑出中間部份 "(.....)"的左括和右括分別位在字串中的第幾個字元
: : 下面是我的CODE
: : my $haha="....((((((...(((..((.(.(((((.....))))).))...)))))))...)))..";
: : print length($1) if( $haha =~ m/(.*)[^\(]*? /)
: : 但他這樣取到的一直都是整個字串的length
: : 而不是我想要的"中間左括"的位子
: : 能不能請厲害的人幫我一下 實在不知道該怎麼拆解找這兩個東西 @@
: print length($1) + 1 if( $haha =~ m/(.*)\([^\(]*? /)
: 這樣呢? 強迫至少要找到一個 XD
perl -ne '$haha="....((((((...(((..((.(.(((((.....))))).)).(..)))))))...)))..";
while ($haha =~m/\([^\(\)]*\)/g)
{printf "%d\t%d\n",length($`)+1,length($`)+length($&)};exit'
細部還有一點小問題、看看能不能幫上忙吧。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.198.12.168