我有一個像這樣的字符串「is2 Thi1s T4est 3a」,我需要對它進行排序,所以 數組看起來像這樣「Thi1s is2 3a T4est」。數字可以出現在字符串的任何地方。我知道如何按字母順序排序字符串以及如何對數組進行排序,但在這種情況下它是如何完成的?有沒有一種方法可以幫助對數字進行分類而忽略字母? 我一直在努力完成這項任務一段時間,任何幫助將不勝感激!根據子串中的數字對字符串排序
3
A
回答
9
你可以在空間分割和基於存儲在每個字符串的數值sort
:
let words = "is2 Thi1s T4est 3a".split(' ');
words.sort((a, b) => a.replace(/[^\d]+/g, '') - b.replace(/[^\d]+/g, ''));
console.log(words.join(' '));
+1
大聲笑我的答案几乎與你的一樣。我給你+1,並刪除我的。 – naomik
2
首先定義一個比較功能。
compare = function(x, y) {
return x.match(/\d+/g)[0] - y.match(/\d+/g)[0];
}
然後使用它。
var z = "is2 Thi1s T4est 3a";
z.split(" ").sort(compare).join(" ");
//"Thi1s is2 3a T4est"
或者如果你喜歡一個線,
z.split(" ").sort(function(x, y){return x.match(/\d+/g)[0] - y.match(/\d+/g)[0];}).join(" ")
+0
謝謝您的評論! – Alex
相關問題
- 1. 根據字符串中的數字對字符串進行排序Java
- 2. 根據字符串中的數字排序數組中的字符串
- 3. 如何根據特定的子串排序字符串?
- 4. 根據插入的字符串排序
- 5. 排序字符串數據
- 6. Matlab,根據第一個字符串排序字符串
- 7. 根據「divider」字符將PHP字符串劃分爲排列的子字符串
- 8. TCL:根據字符串的一部分對字符串列表進行排序
- 9. 排序字符串數字
- 10. 根據長度對字符串數組進行排序
- 11. 根據不同字符的數量對字符串進行排序
- 12. 使用STL對子字符串排序
- 13. 根據字典中的值排序字符串的列表
- 14. 按列值的子字符串對數據框排序
- 15. 排序字符串對象
- 16. 查找子字符串,根據情況替換子字符串
- 17. 根據條件從字符串中提取子字符串
- 18. 根據字符串的長度對Python列表進行排序
- 19. 根據字符的存在子串字符串
- 20. 根據前面的字符串返回子字符串
- 21. 在Linq的字符串的子字符串排序
- 22. 字符串數據的Mysql列排序
- 23. 如何根據字符串值的參考列表排序字符串列表
- 24. 在字符串數組中排序字
- 25. 根據字符數分割字符串
- 26. Postgresql函數對字符串中的字符進行排序
- 27. 根據r中的最後一個字對字符串進行排序
- 28. 根據字符串枚舉值對mongo結果進行排序
- 29. 試圖根據字符串值對列表進行排序
- 30. 根據字符串對GWT進行排序
你需要寫一個函數來解析號碼的開出每一個字符串,然後讓他們到自己的完整號碼。 – Trasiva
這是一個字符串數組嗎?我看到一個字符串。 – naomik
是否有保證每個字符串只有一個數字? – TAGraves