2014-09-03 132 views
0

我正在寫一個使用正則表達式的python腳本,並且我發現perl需要什麼,但是因爲我在perl中不強壯,所以我不清楚所寫的是什麼。以下是代碼:Perl的正則表達式

'\\b' . $2 .'\\b.{0,15}' . $3 . '[^\\d]{0,5}' . $4 . ((defined $5) ? '[^\\d]{0,5}' . $5 : '' 

問題主要在於它檢查$ 5是否被定義的行。你能幫我理解這一行嗎?

+0

你在三元(?:)表達式 – 2014-09-03 13:03:50

回答

4

這是Conditional Operator

(defined $5) ? '[^\\d]{0,5}' . $5 : '' 
^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^ 
condition  take this if true take this if false 

將返回'[^\\d]{0,5}' . $5如果$5定義,空字符串,否則。

+0

哦有一個無與倫比的括號,現在對我來說很清楚。謝謝 – user2177768 2014-09-03 08:51:28