在這個正則表達式中(\d*)[\^*{2}](\d*)我試圖捕獲一個電源公式的數字:例如2^3應該返回2和3,而4 ** 5應該返回4和5。在第一種情況下,有什麼想法?正則表達式中的電源
回答
*{2}
位沒有做你認爲它正在做的事,因爲它在一個類([]
)。它將接受班級中的每個單獨的字符(類中唯一的元字符是^
和-
)。所以你的表情會接受121,1 {4等。可能是這樣的:
(\d+)(?:\^|\*{2})(\d+)
更接近標記。
@migg謝謝!剛剛發現了。 – ig0774
由於@ migg的解決方案存在一些缺陷,所以我▲選擇了這個。 – 2016-03-06 13:18:42
這將是正確的:
(\d*)(?:\^|\*{2})(\d*)
你是從字面上符合[]
內一切這是不是你想要的。
儘管@ ig0774有類似的解決方案,但'*'確實在搜索上有所不同。它也允許第一個或最後一個數字是'可選的',就好像不存在一樣,因此匹配'** 5','2 **','^ 4','**','^'。 – 2016-03-06 13:17:47
@noob你說得對。我試圖保持它接近原來的原因,因爲如果例如OP沒有聲明的話。 '^ 5'應該匹配或不匹配。問題顯然在'[]'之間。所以「bug」是一個伸縮恕我直言。 – migg
當我說**錯誤**我的意思是意想不到的行爲。 – 2016-03-06 17:37:23
- 1. 電話號碼正則表達式(正則表達式)在Python
- 2. 正則表達式(正則表達式)
- 3. 正則表達式(正則表達式)
- 4. 正則表達式(正則表達式)
- 5. 正則表達式正則表達式返回的值正則表達式
- 6. 正則表達式的電話號碼
- 7. 電話號碼的正則表達式
- 8. 電影評級的正則表達式
- 9. 正則表達式的電話號碼
- 10. 正則表達式的電話號碼
- 11. 簡單的電話正則表達式
- 12. 來自jQuery源的正則表達式
- 13. php的正則表達式資源
- 14. 正則表達式中的正則表達式?
- 15. Java中的正則表達式(正則表達式和語法)
- 16. 正則表達式中的點(正則表達式)
- 17. 選擇正則表達式的正則表達式中間值
- 18. 區分正則表達式中的多個正則表達式?
- 19. 正則表達式中的perl正則表達式
- 20. 正則表達式在javascript - 正則表達式中的變量
- 21. 日文中的正則表達式(正則表達式)
- 22. Firefox正則表達式中的Javascript正則表達式
- 23. 正則表達式中的正則表達式?
- 24. 正則表達式在c中的正則表達式#
- 25. Java UIMA:正則表達式中的正則表達式變量?
- 26. JavaScript中的正則表達式(正則表達式)
- 27. 正則表達式中的正則表達式幫助
- 28. 正則表達式中的正則表達式
- 29. Objective-C和正則表達式中的正則表達式
- 30. 正則表達式正則表達式正則表達式使用正則表達式,但不是與Python
您的鏈接regex101完美地描述了它。正則表達式對於你想要做的事情是錯誤的。 – migg