题解 | #字符串排序#
字符串排序
https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () => (await iter.next()).value; void (async function () { // Write your code here while ((line = await readline())) { let tokens = line.split(""); // 先把特殊字符提取出来,用obj存这些特殊字符,key就是他们的位置,value就是特殊字符值 obj = {}; let str = ""; for (let i = 0; i < tokens.length; i++) { if (tokens[i].match(/[A-Za-z]/g)) { str += tokens[i]; } else { obj[i] = tokens[i]; } } let str2 = str.split('') str2.sort((a, b) => { return a.toUpperCase()<b.toUpperCase()?-1:1 }); // 把特殊符号插回去 let arr = str2; for (let k in obj) { arr.splice(parseInt(k), 0, obj[k]); } console.log(arr.join("")); } })();