Re: [問題] 字串比對次數?

看板Perl作者 (newnewest)時間16年前 (2008/11/24 12:18), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串3/3 (看更多)
※ 引述《deh3215 ()》之銘言: : 舉例: : #!/usr/bin/perl : $str="http://secure.ooo.com.secure.ijm.secure"; : if ($num=$str =~/(secure)*/) { : print $num; : } : 希望可以印出比對secure的次數 : 不論是$num=$str =~/(secure)*/ : 或是$num=$str =~/secure*/ : 或是$num=$str =~/secure/ : $num值都為1..應該是3 囧 要用 match global 吧.. if (@num = $str =~/secure/g) { print scalar(@num); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 67.188.125.61

11/24 13:37, , 1F
另一種寫法,感謝題供不同的解
11/24 13:37, 1F

11/24 14:03, , 2F
其實這才是原問題的解答... (逃~~~
11/24 14:03, 2F

11/24 17:31, , 3F
g兄的方法比較巧妙 這篇的解法比較正規(找不到形容詞)
11/24 17:31, 3F

11/24 21:57, , 4F
另外print $#num+1也可以印出3 scalar是指陣列中元素個數?
11/24 21:57, 4F

11/24 22:04, , 5F
n兄的作法和自己一開始想的一樣,不知道perl有全域比對 囧"
11/24 22:04, 5F
文章代碼(AID): #19AYi9lE (Perl)
討論串 (同標題文章)
文章代碼(AID): #19AYi9lE (Perl)