-
while($line =~ /\b([a-z0-9._-b/isg)\.a-z]/)_email/}
數字差不多,分成兩部分進行匹配,然後判斷條件,樓上的方法也不錯。 建議製作 m,考慮多條線。
-
說實話,這個我也研究了很久,雖然好不容易想通了,但是這種肯定絕對不建議在真正程式設計的時候用到,正規的很有匠心,幾個符號都少不了。
首先,我們來了解一下訂單問題:
從 Perlre 文件中對捕獲緩衝區的描述中可以看出:捕獲緩衝區從左到右編號。 也就是說,對於您的表示式,最外層是 1 美元,中間是 2 美元,最裡面是 3 美元。
但下面還有一句話:
but inside this construct the numbering is restarted for each branch.
編號將重新開始,即先前編號的內容將被替換。
# before --branch-reset---after
a ) x ( y ) z | p (q) r) |t) u (v) )z ) /x
然後程式解析正規表示式並檢視 s....ly,所以我找到了 [softly],它是 3 美元,然後要求 0 個或更多的空格,恰好後面跟著乙個空格,所以它被解析為 [softly],即 2 美元。 這時鑰匙就進來了,後面跟著乙個簡單的*。
我們都知道 * 表示 0 次或更多次,但一般前面有乙個前導字元,表示你要 0 個或更多個字母,但前面沒有字母,並且有一串表示式,所以程式發現我需要 0 個或更多這樣的結構(s...)。ly) s*,所以我們以後只能繼續看是否有這樣的字串。
於是程式然後找到[慢慢地],把$3的內容換成這個,然後把同樣的$2換成[slowly],然後再看一遍,直到第四次,$3換成[巧妙地],$2也[巧妙地],搜尋結束了,程式說,你要求0到大於(s...)。ly) s* 字串的結構,我給你找了總共 4 個這樣的字串,分別是:[輕][慢][肯定][微妙],那麼 $1 是幾個這樣的字串的組合,這是完整的 [輕柔地緩慢肯定微妙地]。
說實話我花了10分鐘才弄清楚這一點,挺無聊的,有時候還是折騰一些有用的東西比較好。。。
-
具體說明如下:
-捕獲。 - 匹配任何角色。
s -- 匹配空格。
- 大於或等於 0 個匹配項。
輕輕地,慢慢地,肯定地微妙“——所有 4 個字串都有乙個共同的特點,那就是字元 s 和 ly 之間有 3 個字元,所以可以有三個"."進行匹配,以便您可以看到列印的結果應該是前三個字串。
顯然,以上兩個位置的程式都不能正常工作,正確的如下,推@name目錄,$file如果(-e"$directory/$file"); >>>More
首先,初學者,沒有基礎並不可怕,因為大家都是從0基礎出來的,沒什麼好怕的,只要你付出的比別人多,學習的多,那麼你就會比別人積累得更多。 >>>More
多核相對於單核的優勢在於它確實可以同時處理多個東西,因此如果程式想要在多核 CPU 上獲得更好的效能,多執行緒是必要的。 然而,使用多執行緒涉及執行緒之間的資料同步問題,程式設計師必須協調程式之間資料的訪問和處理。 但是,我不認為多核程式設計和單核程式設計的區別在於執行緒同步的問題,因為單核程式設計也可以使用多執行緒,還需要面對執行緒同步的問題。 >>>More