回答
最簡單的方法可能是與負前瞻:
M(?!0{3})\d{3}
[Regex101]
這符合字面M
,將檢查接下來的事情是不是三個零,然後匹配三位數。
如果你想阻止一組特定的數字,您可以修改前瞻到(這裏0,2 5,6)檢查特定重複數字:
M(?!([0256])\1{2})\d{3}
[Regex101]
要檢查所有三位數字,請將[0256]
替換爲\d
。這個正則表達式對一個數字進行前瞻檢查,然後使用反向引用測試它是否重複兩次。
一個不太冗餘的方法可能是把捕獲組先行外:
M(\d)(?!\1{2})\d{2}
[Regex101]
這個版本說來捕捉一個數字,確保它不重複兩次以上,然後再捕獲兩個數字。
感謝發佈,將刪除我的。 –
@cᴏʟᴅsᴘᴇᴇᴅ對不起,我在手機上,但沒有與應用程序。甚至沒有意識到還有其他答案。 –
非常感謝!不知道那會很複雜。新的正則表達式在這裏。 – NewbieCoder
- 1. notepad ++在這種情況下如何使用正則表達式?
- 2. 正則表達式 - 在某些情況下不起作用
- 3. 如何在這種情況下使用正則表達式?
- 4. 在哪些情況下使用正則表達式更好?
- 5. 正則表達式或Python
- 6. 或正則表達式?
- 7. IfElse或正則表達式
- 8. 正則表達式或OR兩個範圍正則表達式
- 9. Sed - 從正則表達式到(正則表達式或eof)
- 10. 正則表達式/正則表達式「或」
- 11. 正則表達式(正則表達式)
- 12. 正則表達式(正則表達式)
- 13. 正則表達式正則表達式正則表達式使用正則表達式,但不是與Python
- 14. 正則表達式混合情況下排除特定情況下
- 15. 正則表達式Expressions有關表情
- 16. 正則表達式替換零在某些情況下
- 17. 奇怪的情況下的PHP正則表達式
- 18. 如何爲這種情況編寫正則表達式?
- 19. 正則表達式:匹配兩種情況之一?
- 20. 似乎無法爲特定情況制定正則表達式
- 21. 這種情況的正則表達式是什麼?
- 22. 正則表達式對於這種情況
- 23. 在幾種情況下設置正則表達式
- 24. Perl的 - 正則表達式 - 比賽情況
- 25. 正則表達式:一個特定的情況下不匹配
- 26. 正則表達式滿足3個不同的情況
- 27. 匹配正則表達式通過簡單的兩種情況:
- 28. 非ASCII的情況下正則表達式字邊界
- 29. 正則表達式和字符的情況下
- 30. 紅寶石正則表達式的情況
像這樣M([0-9] {2} [1-9]) – Gunner
@Gunner但是,如果前兩位數字不是0,最後一個可能是0,所以該模式不會工作。 –
三重零負的前瞻性。 –