我想匹配具有小於或等於 2位數的字符串,但不大於 2位數字。如果數字不連續,它們可能總共超過2位數,但每個連續數字最多不得超過2個字母。BASH腳本正則表達式:小於或等於X位
所以,我想匹配像
42 ABC92 05XYZ ABC82XYZ ()%^.90 XYZ AB 47.jpg 3 83abc29 9abw88ak ak8+
但不
426 ABC9242 05697XYZ ABC8232XYZ ()%^.9068 XYZ AB 479.jpg 483 a8
之前或之後的數字不僅可以字母表的字母,也任何字符字符串不是數字(在數字之前或之後沒有字母,而且這樣的字符串也應該匹配)。
.*[[:digit:]]{1,2}.*
也匹配超過2位的字符串。這不是我想要的。
我該怎麼做?
怎麼樣'ABC2dsd2'應該與之相匹配? – aelor
@eelor對不起,應該匹配 – Naetmul
@Naetmul請澄清。如果它應該匹配,即使不是連續的,就像在aelor指出的情況下一樣,你不應該從問題陳述中刪除「連續數字」這個短語嗎? – John1024