-3
我想拿出在Perl的正則表達式來捕獲以下fork炸彈命令:在Perl的正則表達式來捕捉fork炸彈命令
:(){ :|:& };:
下面是我想出了。
:\s*(\s*)\s*{\s*:\s*|\s*:\s*&\s*}\s*;.*:
我同意這個正則表達式有限制。叉炸彈命令可以很容易地改變,給定的正則表達式不會捕獲它。然而,正則表達式是一個要求。有沒有更好的方法來捕捉這個特定的Perl?
我想拿出在Perl的正則表達式來捕獲以下fork炸彈命令:在Perl的正則表達式來捕捉fork炸彈命令
:(){ :|:& };:
下面是我想出了。
:\s*(\s*)\s*{\s*:\s*|\s*:\s*&\s*}\s*;.*:
我同意這個正則表達式有限制。叉炸彈命令可以很容易地改變,給定的正則表達式不會捕獲它。然而,正則表達式是一個要求。有沒有更好的方法來捕捉這個特定的Perl?
中平凡:
/\Q:(){ :|:& };:/
現在告訴我們你真正想做到:你想匹配的內容從確切的文本類型的變化。如果你能用英文來形容它,你就有機會獲得它的正則表達式;如果沒有,不是。
謝謝。我知道\ Q返回所有下面的非單詞字符的值。然而,如果中間有額外的空格,你的正則表達式不會捕獲叉式炸彈。最後,我想創建一個正則表達式來捕獲給定的叉式炸彈,即使函數名稱「:」不同。 – user3217295
有什麼意義?你改變了一下,它仍然是一個叉形炸彈,但正則表達式不會識別它。 –
嘗試用正則表達式捕獲它最終是徒勞的。不要從不受信任的源運行shell命令。 – duskwuff
您是否試圖捕獲*正確*上述命令或任何*叉炸彈命令與您的正則表達式? –