@modern-kit/utils
Version:
1 lines • 1.22 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../../../src/validator/hasRepeatingChars/index.ts"],"sourcesContent":["/**\n * @description 주어진 문자열에서 연속된 문자의 개수가 maxCount를 초과하는지 확인하는 함수입니다.\n *\n * @param {string} string - 확인할 문자열\n * @param {number} maxCount - 연속된 문자의 최대 개수\n * @returns {boolean} 연속된 문자의 개수가 maxCount를 초과하는지 여부\n *\n * @example\n * containsConsecutiveCharacters('aaabbb', 3); // true\n * containsConsecutiveCharacters('aaabbb', 2); // false\n */\nexport function hasRepeatingChars(string: string, maxCount: number): boolean {\n if (!Number.isInteger(maxCount) || maxCount < 1) {\n throw new Error('maxCount는 양의 정수여야 합니다');\n }\n\n const regex = new RegExp(`(.)\\\\1{${maxCount - 1}}`);\n return regex.test(string);\n}\n"],"names":[],"mappings":";;AAWO,SAAS,iBAAA,CAAkB,QAAgB,QAAA,EAA2B;AAC3E,EAAA,IAAI,CAAC,MAAA,CAAO,SAAA,CAAU,QAAQ,CAAA,IAAK,WAAW,CAAA,EAAG;AAC/C,IAAA,MAAM,IAAI,MAAM,yEAAuB,CAAA;AAAA,EACzC;AAEA,EAAA,MAAM,QAAQ,IAAI,MAAA,CAAO,CAAA,OAAA,EAAU,QAAA,GAAW,CAAC,CAAA,CAAA,CAAG,CAAA;AAClD,EAAA,OAAO,KAAA,CAAM,KAAK,MAAM,CAAA;AAC1B;;;;"}