回答
假設你總是有兩個數字,用這個:
var item = "item24";
var result = item.match(/(\d)(\d)$/);
var digit1 = result[1];
var digit2 = result[2];
如果你需要的是最後幾位數字則:
\d+$
將做的工作。 \d+
表示1位或更多位數,而$
表示「結束」。然後你可以使用result_string[0]
和result_string[1]
(當然,你應該檢查長度):
var txt = "item25";
var result = txt.match(/\d+$/);
if (result != null)
{
var digits = result[0];
alert(digits[0]);
alert(digits[1]);
}
您還可以使用正則表達式組,如:
(\d)(\d)$
你想爲Extrac「23」給一個變量?
你在這裏:
/^item([0-9]+)$/
將提取itemXXXXXX返回該號碼的任何數字。
是的,我會被提取到變量,然後將其串連到另一個字符串 – Shouvik 2010-09-22 08:28:11
你不需要用這個問題來打擾正則表達式解析器。如果字符串到數字的第一部分始終是相同的長度,你可以使用slice()或substring():
var str = "item23";
alert(str.slice(4));
//-> 23
這將是比正則表達式更快,更復雜。如果您需要分開的數字,你可以將它們分割:
var arr = str.slice(4).split();
//-> ["2", "3"]
謝謝我不知道這種方法。將嘗試一段時間... :) – Shouvik 2010-09-22 08:42:42
@Shouvik:根據我的經驗,如果有更合適的方法可用,最好避免使用正則表達式。我已經更新了我的答案,其中包含一個解決方案,可以提供與您接受的答案相同的結果。 – 2010-09-22 08:45:18
假設文本總是4個字符長。 – 2010-09-22 08:51:10
- 1. 正則表達式匹配「CP」後跟3-5個數字
- 2. 正則表達式匹配數字後跟特定字符
- 3. 匹配字母后跟數字的正則表達式
- 4. 單個數字後跟兩個字母表正則表達式
- 5. Java正則表達式:匹配一個字符後跟空格?
- 6. 正則表達式匹配前兩個字符後跟一個空格
- 7. 正則表達式以匹配0-2個字符後跟4個數字
- 8. 匹配兩個URL正則表達式
- 9. 正則表達式匹配兩個CON
- 10. 兩個正則表達式與匹配
- 11. 正則表達式匹配兩個詞
- 12. 正則表達式匹配單個,兩個或三個數字
- 13. 正則表達式匹配不跟其他兩個詞
- 14. 的Tcl:匹配字符串僅當後跟一個數字[正則表達式]
- 15. 正則表達式MySQL - 匹配前兩個字母,x數字
- 16. 正則表達式不能接受兩個數字後跟c#
- 17. 奇怪的正則表達式(正則表達式)匹配!不匹配數字
- 18. 正則表達式匹配兩個兩個字(或n乘n)
- 19. 正則表達式 - 匹配一個字
- 20. 正則表達式以匹配數字後跟下劃線和數字?
- 21. 正則表達式匹配兩個不相等的數字
- 22. pcre正則表達式匹配前兩個單詞,數字
- 23. perl正則表達式數字匹配
- 24. 正則表達式也匹配數字
- 25. Perl正則表達式匹配數字
- 26. 正則表達式;不匹配數字,除非跟着'/'
- 27. 正則表達式匹配兩個表達式之間的線
- 28. 正則表達式以匹配特定的字符串後跟數字?
- 29. VBA正則表達式匹配兩行
- 30. 正則表達式正則表達式匹配字符串
感謝這個完美的作品。 – Shouvik 2010-09-22 08:41:52