如果一个字符串由很多个完全相同的字符串组成,如果只想取其中一个则可以:
test.js
:
let targetStr = process.argv.slice(2)[0] // 获取想要重复的字符串 123456let repeatCount = process.argv.slice(2)[1] // 获取想要重复的次数 8let resultStr = ''for(let i = 0; i < repeatCount; i++) { resultStr += targetStr}console.log(resultStr)function countInstances(mainStr, subStr){ let count = 0 let offset = 0 do{ offset = mainStr.indexOf(subStr, offset); if(offset != -1) { count++; offset += subStr.length; } } while (offset != -1) return count}function findTargetStr(targetStr) { let len = targetStr.length for(let i = 0; i < len; i++) { let str = '' for (let k = 0; k <= i; k++) { str += targetStr[k] } let count = countInstances(targetStr, str) if (count * str.length === len) { console.log(str) break } }}findTargetStr(resultStr) // 123456
在shell
命令窗口输入: node test.js 123456 8