是否有可能編寫一個匹配[a-zA-Z]{2,4}
但不匹配test
這個詞的正則表達式?或者我需要通過幾個步驟來過濾?正則表達式:匹配模式但不是某個詞
回答
當然,你可以使用negative lookahead。
(?!test)[a-zA-Z]{2,4}
我不知道,如果你需要它,你在做什麼,但請注意,您可能需要使用開始和結束錨(^
和$
)如果你正在檢查的整個輸入與該模式匹配。否則,它可能會匹配ouaeghAEtest
之類的東西,因爲它仍然會找到四個不是「測試」的字符。
另外,對於多個單詞排除:'(?![test1,test2])[a-zA-Z] {2,4}' – shrx
@shrx不完全。你已經使用了一個字符類,所以如果它是列表中的一個,那麼只能匹配第一個字符。 ([圖](https://www.debuggex.com/r/LyIpMYTAhJ9Gja4x))所以它會拒絕任何以't','e','s','1',',',或'2'。使用管道「或」運算符代替:'(?!test | foo | bar)[a-zA-Z] {2,4}'([diagram](https://www.debuggex.com/r/Y3oVV178HTqb6LRw )) – Wiseguy
[A-Za-su-z][A-Za-df-z]{0,1}[A-Za-rt-z]{0,1}[A-Za-su-z]{0,1}
只是一個想法,還沒有使用真正的代碼試圖
這會拒絕許多其他字符串,例如'tree'。 – verdesmarald
- 1. 正則表達式匹配[]但不是\ [\]
- 2. 正則表達式匹配(但不是\)(
- 3. 正則表達式匹配%但不是\%
- 4. 正則表達式匹配兩個詞
- 5. 正則表達式:匹配的模式,但不包括模式
- 6. 正則表達式不匹配模式
- 7. 正則表達式模式不匹配
- 8. 正則表達式 - 不匹配模式
- 9. C#正則表達式不匹配,但正則表達式測試者匹配
- 10. 正則表達式(正則表達式)模式匹配
- 11. 正則表達式匹配正則表達式,但不是在JavaScript中?
- 12. 正則表達式只匹配某個單詞
- 13. 正則表達式 - 匹配模式但返回子模式
- 14. 正則表達式在Java中匹配一個單詞不是
- 15. 正則表達式匹配單詞末尾,而不是一個「#」
- 16. 正則表達式來匹配單詞
- 17. 正則表達式 - 匹配一組詞
- 18. C++正則表達式匹配「+」量詞
- 19. PHP的正則表達式匹配詞
- 20. 正則表達式匹配後的詞
- 21. Java模式匹配正則表達式
- 22. REGEX - 正則表達式模式匹配
- 23. URI正則表達式模式匹配
- 24. 正則表達式匹配模式
- 25. 匹配模式正則表達式coldfusion
- 26. 模式匹配的正則表達式
- 27. C#正則表達式模式匹配
- 28. 正則表達式c#模式匹配
- 29. Python正則表達式 - 模式匹配
- 30. Java正則表達式匹配模式
小費:始終指定您正在使用的語言和正則表達式引擎;他們往往不同。 – ruakh
如果您打算替換字符串中的每個2-4個字符的單詞,則應該提及,因爲根據「測試」的解決方案部分也可以匹配。但有其他的解決方案更有幫助 – Hachi
沒有它的只是匹配一個像這樣的字符串:'foobar.aaa.dsf',但有像'foobar.test.dsf'字符串我不想匹配。所以它不是要替換一些東西。 – reox