我需要檢查一個數字的前6位數字是否來自222100-272099。 這是用JavaScript編寫的,我不確定如何去實現它。 我最初的想法是這樣的: 匹配(/^2 [2-7] [0-9] $ /),但我不知道如何正確指定此範圍。如何在JavaScript中使用正則表達式來指定此範圍?
回答
您不應該爲此使用RegEx。這是更好地子串的字符串,然後比較:
const n = Number.parseInt(str.substr(0, 6), 10);
if (222100 <= n && n <= 272099) {
// ...
小心這個。它也會匹配'22210a'或'25ujid'。你可能也想通過'parseInt()'來運行它。 – Phylogenesis
真的嗎? 'const str ='22210a'; const n = str.substr(0,6); 222100 <= n && n <= 272099'對我而言爲虛假。 – idmean
這是一個更理想的解決方案。它工作完美 - 謝謝! – amoonshapedpool
正則表達式是對字符串模式匹配: Wikipedia: Regular expression
您可以使用JavaScript的parseInt函數()函數把你的6個數字字符的字符串轉換成可以用來做一個簡單的大於/小於檢查的數字。 W3C: parseInt()
- 1. 使用正則表達式指定一個範圍的文件
- 2. 正則表達式中JavaScript來檢查值在範圍
- 3. 如何在C++正則表達式中使用Unicode範圍
- 4. 正則表達式來跨越-9.99範圍爲0在javascript
- 5. 正則表達式或OR兩個範圍正則表達式
- 6. Java正則表達式指定數字範圍
- 7. 如何寫正則表達式來匹配數字範圍?
- 8. 希伯來語Unicode範圍在JavaScript正則表達式中不起作用?
- 9. 如何使用Java正則表達式來匹配此模式?
- 10. 正則表達式範圍如何使用簡寫語法?
- 11. 在JavaScript中匹配數字範圍的正則表達式
- 12. JavaScript,正則表達式 - 在範圍中包裝顏色值
- 13. Javascript正則表達式在字符類中的無效範圍
- 14. 如何否定包含範圍的正則表達式?
- 15. 如何使用Javascript正則表達式
- 16. Javascript正則表達式如何使用
- 17. 用於匹配正則表達式的表達式範圍
- 18. 正則表達式的貪婪範圍
- 19. 數字範圍的正則表達式
- 20. perl正則表達式無效範圍
- 21. Java的正則表達式範圍
- 22. 正則表達式的具體範圍
- 23. 正則表達式範圍1-50
- 24. 正則表達式的年份範圍
- 25. ASP.NET正則表達式編號範圍
- 26. 正則表達式 - 可選範圍
- 27. 正則表達式編號範圍
- 28. 爪哇正則表達式數範圍
- 29. 組正則表達式超出範圍
- 30. VBA +正則表達式+範圍。更換
(/^2 [2-7] [0-9] {4} $ /)可能是你在找什麼? {number}是你想要的前幾個字符的數量。如果這樣做,我會寫一個答案。 – sniperd
歡迎來到Stack Overflow。請先閱讀幫助中心,如何在此論壇上提出一個好問題:https://stackoverflow.com/help/how-to-ask。因此,我們可以更好地解決您的問題,並可以幫助解決您的問題。 –
[現在你有兩個問題](https://blog.codinghorror.com/regular-expressions-now-you-have-two-problems/)。 – Phylogenesis