증상
문자열을 보고 종류를 판별하는 규칙을 여러 개 나열했다. 구체적인 케이스가 일반 규칙에 먹혔다.
2-9-2 구조 → A ← 일반 패턴이 앞
1Z로 시작 → B
LS로 시작 → C
1Z... 도 LS...US 도 앞의 일반 패턴에 먼저 걸려 전부 A로 판별된다. B와 C 규칙은 한 번도 도달하지 않는다.
해법
1Z · LS · 4PX (구체적 접두) ← 먼저
2-9-2 · 숫자 N자리 (일반 패턴) ← 나중
★ 패턴 목록에서 나열 순서는 문서상의 순서가 아니라 실행 우선순위다. 순서를 설계로 취급한다.
두 번째로 겪었다
같은 형태를 이전에도 밟았다 — 품목 분류 규칙에서 Rail-mounted의 mount가 '거치대'로, Tactical Pen의 pen이 '만년필'로 잡혔다. 짧고 일반적인 토큰이 앞에 있으면 긴 구체적 토큰이 도달하지 못한다.
★ 한 번 밟은 뒤에도 다른 도메인에서 같은 순서 실수를 반복했다. 규칙 목록을 새로 쓸 때마다 "구체적인 것이 위에 있나" 를 확인한다.