2015-04-14 29 views
-1

我需要一個正則表達式用記事本++「在文件中查找」中使用或與查找和Linux上 grep命令find $dirs -type f -name '*.php' -o -name '*.sh' -exec grep -rHn "REGEX" ,以確保沒有密碼是在我們的代碼庫 硬編碼密碼應至少爲8個字符長,最大12和至少應該有一個小寫字母,大寫字母,數字字符,它可以包含特殊字符或不正則表達式的代碼回購搜索或抓取複雜的密碼

這裏有一個例子密碼我想匹配

[email protected]

f0llOwUp

感謝

回答

0

這將是幾乎不可能從任何其他文本/代碼區分密碼,但這裏的正則表達式的尋找,這將匹配匹配任何東西,但空格,包括單引號和雙引號:

[! - 〜] {8,12}

如果你不希望包括報價和密碼必須有引號周圍試試這個(不知道你需要躲避啓動括號,但不應該傷害):

[ '「] [# - !&( - 〜] {8,12}'」]

注意,爲grep的,你必須使用-P選項,逃離雙引號,例如:

的grep -P 「['\」] {8,12}# - - &(〜!] ['\ 「]」

如果你想確保你至少有一個小寫字母AND至少一個大寫字母AND至少一個數字,你必須使用lookahead,而且這個更完整,但是這個網站在底部有一個例子和解釋(注意:我無法在Notepad ++中使用lookaheard) : https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9781449327453/ch04s19.html#validation-password-variations