看板 [ Perl ]
討論串[請益] 在一行code中split兩次
共 4 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓1(1推 0噓 6→)留言7則,0人參與, 最新作者josefy (醉落~最弱)時間9年前 (2014/12/01 22:40), 編輯資訊
1
0
1
內容預覽:
各位版大好,. 有筆data 我希望用條件A split第一次並取出split後元素 1,3,5. 之後再用條件B split第二次, 這時我需要取第1個元素並把資料存到 @rawdata裡面. 我已經可以分兩次做完 但是我想以perl的強大功能, 應該可以更簡潔.. 是否有辦法用一行就把這"兩"個

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者josefy (醉落~最弱)時間9年前 (2014/12/02 21:42), 編輯資訊
0
0
1
內容預覽:
各位版大好, 程式碼如以下. 假設@data已經從外部讀入 且共有 n 筆. for($i=0;$i<$n;$i++){. @temp1=(split(/A/,@data[$i]))[1,3,5];. # 第一次split用A來做條件, 取第1,3,5個元素. for($j=0;$j<3;$j++)
(還有91個字)

推噓0(0推 0噓 2→)留言2則,0人參與, 最新作者Neisseria (Neisseria)時間9年前 (2014/12/03 11:48), 5年前編輯資訊
1
0
1
內容預覽:
應該就是原文 A 大寫的方法,這裡重寫一次. # 假設 gen_data() 產生出符合本文條件的 data,最下面有 gen_data 的例子. my @data = map { gen_data() } (1..100);. for my $i (0..$#data) {. my @e = ma
(還有702個字)

推噓2(2推 0噓 2→)留言4則,0人參與, 最新作者CindyLinz (Cindy Wang)時間9年前 (2014/12/03 17:04), 編輯資訊
0
0
1
內容預覽:
我也提供一個~. @result =. map { (split /B/)[0] } map { (split /A/)[0,2,4] } @data;. 就.... [xxxxxx]->[0] 可以寫成 (xxxxxx)[0]. @{[xxxxxx]}[0,2,4] 可以寫成 (xxxxxx)[0
首頁
上一頁
1
下一頁
尾頁