Skip to content

BOM(\uFEFF) 토큰화 시 token.form이 빈 문자열로 반환되는 이슈 #216

@Ink-14

Description

@Ink-14

안녕하세요. 좋은 라이브러리를 만들어 주셔서 감사합니다. 항상 잘 사용하고 있습니다!

토크나이징 대상 문자열에 BOM(\uFEFF)이 포함되었을 경우
BOM에 해당하는 토큰의 form이 빈 문자열로 반환되지만 len은 1로 반환되는 이슈가 발견되어 공유드립니다.

from kiwipiepy import Kiwi

kiwi = Kiwi()

text = "테스트용\uFEFF문자열입니다."
tokens = kiwi.tokenize(text)

for token in tokens:
    print(token)
    if token.len > 0:
        # len이 1임에도 form이 비어 있어 IndexError 발생
        print(token.form[-1])

실행 결과

Token(form='', tag='SW', start=4, len=1)
IndexError: string index out of range

zero-width space(\u200b)는 토큰이 아예 생성되지 않던데, 비슷한 처리가 되면 좋겠습니다.

OS: Windows 11
Python: 3.13.7
kiwipiepy: 0.23.0

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions