1樓:zhuobie
有一天,我得到乙個文字檔案,需要把它匯入資料庫,但它的格式存在問題,我希望逐行對這個檔案進行驗證,如果滿足逗號個數為15、引號個數為30,則認為是有效行,把這些行寫入乙個單獨的檔案,如果不滿足,則把這些行也寫入乙個單獨的檔案。
作為日常用R來吃飯的人,首先選擇用R來實現:
library(stringr)
filename <- 'EHR_OLDMAN_PRIVA_ABILITY_UTF-8.csv'
fileerror <- paste0(filename, '.error')
filecorrect <- paste0(filename, '.correct')
sep <- ','
quo <- '"'
sepcount <- 15
quocount <- 30
filelines <- readLines(filename)
nlines <- length(filelines)
FH_C <- file(filecorrect, 'w')
FH_E <- file(fileerror, 'w')
nline <- 1
for (fileline in filelines) else
if (nline %% 10000 == 0)
nline <- nline + 1
}close(FH_E)
close(FH_C)
指令碼需要在伺服器上執行,然而不是每台伺服器都安裝了R的,然後嘗試用Perl實現:
#/usr/bin/perl
use strict;
use warnings;
use Tie::File;
my $filename = "EHR_OLDMAN_PRIVA_ABILITY_UTF-8.csv";
my $fileerror = $filename.".error";
my $filecorrect = $filename.".correct";
my $sep = ",";
my $quo = '"';
my $sepcount = 15;
my $quocount = 30;
tie my @filelines, 'Tie::File', $filename, memory => 20_000_000;
my $nlines = @filelines;
open(FH_C, '>>', $filecorrect) or die $!;
open(FH_E, '>>', $fileerror) or die $!;
my $nline = 1;
foreach (@filelines) else
if ($nline % 100 == 0)
close(FH_E);
close(FH_C);
Python的擁躉批評R的語法怪異,但R跟Perl相比也就是個弟弟。
2樓:iLRainyday
如果說十幾年前黑,那我還能理解,畢竟當時用的人還比較多。現在都在黑我就不理解了,如今你能找到將perl作為日常程式語言的人比找恐龍都難,很多都是偶爾現學現用一點,很多問題都是因為使用者自己沒搞明白而已,更可笑的是,不去怪自己,反而跟風去黑,好像這樣就說明不是自己的問題,是語言設計的差。所以回到問題上,為什麼大家都在黑?
因為這幫半吊子需要掩飾自己的無能。
對於真正的語言行家的吐槽,我絕對洗耳恭聽。
3樓:
黑Perl也好,或者黑別的東西也好,很多時候黑的人可能就沒怎麼用過。黑的目的也許就是裝裝逼。
那些動不動就黑Perl的人,有多少是寫過的呢?如果說Perl有什麼缺點,那麼能說的具體一點嗎?
還有就是那些沒事四處推薦Python的,難道都是寫過Python的嗎?
4樓:
因為Perl發展太慢了,別的Community 都在跑步前進的時候,Perl語言和社群在Larry的帶領下一直在悠閒的散步。Perl6喊了多少年了,還沒乙個真正能用的版本出來。CPAN多年來一直沒有創新,在新興領域缺乏殺手級框架。
再加上以前支援Perl的幾大公司的力量日漸式微,Perl何去何從。。
5樓:Abel Fourier
perl5和perl6的正則一騎絕塵,如果要在自然語言和程式語言之間架橋,非perl莫屬。
Larry說perl6今年會有大驚喜,我們拭目以待。
6樓:溫酒
為什麼陳述事實也叫黑?
perl可讀性差可維護性極差個人風格強得一塌糊塗這種連perl粉都不能迴避的事實,陳述這個事實什麼時候變成「黑「了?
區別只是一部分人覺得這是缺點,perl粉覺得這是優點罷了。大家都在陳述事實。
7樓:張勇
perl在生物資訊領域用的很廣,我們這邊大部分人不管什麼背景,perl都會一點。閱讀性差我覺得主要是因為perl寫法確實非常靈活吧,不同人風格差別較大。但是在我來看其實就是沒學夠,沒看夠吧...
語言上肯定各有各的優勢,不過這個我就說不上來了。
8樓:
黑perl?你是說black Perl嗎?那可是讚美之詞啊。
其實我想說c++不是吵著符號不夠用嗎?還有@$`可以用啊,快用上。
為什麼大家都在黑楊冪?
penguin 其實有段時間我很喜歡她,尤其是小時候看仙劍三那會兒。可是後來家裡有了電腦後,也看關於她的新聞。但也只是看,說不上有多喜歡,那是因為看軒轅劍之天之痕時被美美的娜扎圈粉了!不多說了,反正我看來她的黑點就是演技問題和性格問題。相信這兩個問題例子太多了! 一顆葡萄的夏天 從什麼時候起不喜歡她...
為什麼大家都在黑迪麗熱巴的長歌行?
可愛又迷人的反派角色 我就覺得那些黑你能不能光明正大的黑,別我反駁兩句就把我拉黑!最重要的是你一開始讓我閉嘴也行,咱倆都開始battle了,你罵我然後拉黑我!年輕人不講武德嘛!讓路人看了以為我慫了呢!真的是氣死了氣死了 予奪 作為一名唐粉,我覺得男女主角可真能裝b。立場問題我看不下去。不是,你你弄成...
為什麼都在黑魁拔?
魁拔我覺得配角比主角更有魅力,說實話,看了這幾部,我始終喜歡不起來蠻吉和蠻小滿,只喜歡迷麟和十二妖。每個配角都有自己的故事,都有自己的人格魅力。而這兩個,真的怎麼看怎麼不喜歡。 我看了知乎的黑點,真是把我震驚到了 首先魁拔本身缺點確實很大,龐大的世界觀塞到一部電影裡,一部電影內容太少,第一部幾乎沒有...