我有一段我的網站,我使用複選框來顯示隱藏信息div onclick。 我需要能夠切換繼續按鈕以及隱藏的div(顯示/隱藏)或(切換),同時收集字符串前面的2位數字,以便在添加到購物車時用作ID。我想也許與reg exp jquery split()函數。我怎樣才能分割一個像45frank這樣的字符串,所以它會像id = 45和val = frank。如何使用Jquery將像45frank這樣的字符串拆分爲
0
A
回答
7
var str = "45frank";
var parts = str.match(/(\d+)(\D+)/).slice(1);
這裏假設第二部分不包含任何數字。
它返回一個數組:
["45", "frank"]
如果有可能的是,第二部分可能有很多,你可以這樣做,而不是:
var str = "45fr9ank";
var parts = str.match(/(\d+)(\D.+)/).slice(1);
導致:
["45", "fr9ank"]
然後只需添加你想要的文字:
parts[0] = "id=" + parts[0]
parts[1] = "val=" + parts[1]
或者,如果你想要一個字符串結果(我不能從問題告訴),你可以這樣做:
var str = "45fr9ank";
str = str.replace(/(\d+)(\D.+)/,function(str,s1,s2){
return "id=" + s1 + " val=" + s2;
});
結果:
"id=45 val=fr9ank"
+1
+1有關替換中的回調函數的示例。我沒有意識到這種可能性。 – mhitza 2011-01-28 16:29:48
0
var id = string.slice(0,2);
var val = string.substr(2);
這裏沒有理由使用jQuery或正則表達式。這隻適用於數字總是兩位數的情況。
如果您忘記它爲「45#弗蘭克」,那麼你可以使用像
var id = string.split("#")[0];
var val = string.split("#")[1];
0
我儘量不使用REG EXP經常性能損失,因爲。如果你的字符串的格式是2位數字然後是一串字符。您可以嘗試以數組的形式訪問該字符串。不幸的是IE不支持這一點。但我有一個工作,基本上將字符串轉換爲數組訪問前兩位數字並撤消它。只需使用JavaScript內置函數,我相信它是.split()。不幸的是,我現在沒有我的代碼。
但你基本上將字符串轉換爲數組。訪問數字的[0]和[1]。從[2]到...字符串長度減1將是您的字符串。您可以使用另一個內置的JavaScript函數將數組轉換回字符串。這種瘋狂的原因是因爲IE不支持像數組一樣訪問字符串。
這就是我做到的。或者只是使用HTML5自定義屬性data-來分別放置信息。
相關問題
- 1. 如何拆分這樣的字符串?
- 2. 將字符串拆分爲字符串
- 3. 將字符串拆分爲字符串
- 4. 將字符串拆分爲「|」
- 5. C#拆分字符串 - 將字符串拆分爲數組
- 6. 如何將字符串拆分爲java中的子字符串
- 7. 如何將字符串拆分爲iOS中的子字符串?
- 8. 如何將字符串拆分爲等長的子字符串?
- 9. 如何將字符串拆分爲重複的子字符串
- 10. 使用split.string(「」);將字符串拆分爲子字符串。
- 11. 將lua字符串拆分爲字符
- 12. C++如何將字符串拆分爲字符串和整數?
- 13. 如何將字符串拆分爲字符串[]?
- 14. 如何將字符串拆分爲字符串數組?
- 15. 使用字符串作爲分隔符來拆分字符串
- 16. 如何將字符串拆分爲字母字符串和數字字符串?
- 17. 如何將int更改爲像這樣的字符串
- 18. 如何使用rpartition將字符串拆分爲反斜槓
- 19. 如何使用PHP將字符串拆分爲2個變量?
- 20. 如何將字符串拆分爲重疊的字符對
- 21. 將字符串拆分爲兩部分
- 22. 如何分離這樣的字符串?
- 23. Python:使用分隔符將字符串拆分爲多行
- 24. 將字符串拆分爲字典
- 25. 如何將字符串拆分爲字符而不使用拆分方法或使用數組?
- 26. python如何將字符串拆分爲多個字符?
- 27. 如何在python中將字符串拆分爲字符?
- 28. 如何將unicode字符串拆分爲多個字符?
- 29. 如何拆分字符串?
- 30. 如何拆分字符串?
會更好地分割像「45_frank」的id,更容易解析後者。 – yoda 2011-01-28 16:18:06
不幸的是,我正在使用現有的系統,並且已經設置了變量,我會使用45_frank格式,這就是我問這個問題的原因。感謝您的快速響應 – 2011-01-28 18:09:11