回答
假設你總是有兩個數字,用這個:
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. 正則表達式以匹配0-2個字符後跟4個數字
- 6. 匹配兩個URL正則表達式
- 7. 正則表達式匹配兩個詞
- 8. 兩個正則表達式與匹配
- 9. 正則表達式MySQL - 匹配前兩個字母,x數字
- 10. 正則表達式匹配不跟其他兩個詞
- 11. 正則表達式不能接受兩個數字後跟c#
- 12. 正則表達式匹配兩個兩個字(或n乘n)
- 13. 正則表達式 - 匹配一個字
- 14. 正則表達式匹配兩個不相等的數字
- 15. perl正則表達式數字匹配
- 16. 正則表達式以匹配特定的字符串後跟數字?
- 17. VBA正則表達式匹配兩行
- 18. 正則表達式正則表達式匹配字符串
- 19. 正則表達式:匹配通配符隨後的數字
- 20. 用正則表達式匹配兩個後續單詞?
- 21. python正則表達式後綴匹配
- 22. 正則表達式(grep)向後匹配
- 23. 正則表達式匹配後的詞
- 24. Emacs正則表達式匹配行尾,後跟新行
- 25. C#正則表達式匹配號碼後跟關閉括號
- 26. 正則表達式匹配一個可選的'+'符號後跟任意字
- 27. ELisp正則表達式:如果跟其他正則表達式匹配組
- 28. Javascript正則表達式匹配alpha長度後跟數字長度
- 29. 正則表達式匹配
- 30. 正則表達式匹配
感謝這個完美的作品。 – Shouvik 2010-09-22 08:41:52