feat: more structed StrangeRepeatableRegex

This commit is contained in:
qwreey 2026-06-06 15:51:16 +00:00
parent 8e63bbe2c8
commit 50c4b37626
No known key found for this signature in database

View file

@ -22,8 +22,6 @@ export function processUnsounds(input: string): string {
// 흐아..하아아..
// 아!아!아!아!아!
// 흐으..흐아아..헤...하아..
// 이런 것들을 단일 단어로 치환합니다. 하지만
// untested
// 혀어어어어어어어엉........ 핫. 혀엉..... 흑... 하앗... 흐윽... 형. 하앙.
// 혀엉.... 하앙... 흐윽... 항. 항. 형... 하앙. 흐으윽... 형... 흡... 혀엉..
// 하아아앗. 혀엉.. 흡... 흐읍... 형.. 하앗. 하아앙... 형... 하앙... 흐윽...
@ -38,11 +36,26 @@ export function processCensor(input: string): string {
/([흐하해헤혀형][아으앙응앗웅응ㅡ!?.,><~'"/]+)/g,
(content: string) => content[0] ?? "",
)
.replace(
/[아ㅏ어ㅓ으ㅡ우ㅜ에오ㅗ야ㅑ읍앙읏웃앗엣웅응흐해헤헼헥하형혀흡흑협혓핫헵햅あアうおーaAoOuU][아ㅏ어ㅓ으ㅡ우ㅜ에오ㅗ야ㅑ읍앙읏웃앗엣웅응흐해헤헼헥하형혀흡흑협혓핫헵햅あアうおーaAoOuU!.,><~'"/]{2,}/g,
(content: string) => content.substring(0, 3),
.replace(processCensor.StrangeRepeatableRegex, (content: string) =>
content.substring(0, 3),
);
}
export namespace processCensor {
// prettier-ignore
export const StrangeRepeatable = [
"아", "ㅏ", "어", "ㅓ", "으", "ㅡ", "우", "ㅜ",
"에", "오", "ㅗ", "야", "ㅑ", "읍", "앙", "읏",
"웃", "엉", "앗", "엣", "웅", "응", "흐", "해",
"헤", "헼", "헥", "하", "형", "혀", "흡", "흑",
"협", "혓", "핫", "헵", "햅", "잇",
"あ", "ア", "う", "お", "ー",
"a", "A", "o", "O", "u", "U",
];
export const StrangeRepeatableRegex = new RegExp(
`[${StrangeRepeatable.join("")}][${StrangeRepeatable.join("")}!.,><~'"/]{2,}`,
"g",
);
}
// 핵토파스칼, 바, 핵타르 AU (에이커 인치 피트 야드)