O hífen Unicode (‐, U+2010) é o que um tipógrafo entende por «hífen». Seu teclado não o tem. A tecla acima do zero produz o hífen-menos, U+002D — um caractere de compromisso herdado do ASCII, que precisava de um glifo só que servisse de hífen e de menos na computação inicial. A U+2010 foi adicionada muito depois, quando o Unicode deu ao hífen um ponto de código próprio, e software de diagramação, geradores de PDF e sistemas profissionais de composição o usam sempre que querem precisão. Para o leitor, os dois são indistinguíveis. Para o parser, são caracteres completamente diferentes.
É nessa brecha que mora o problema. Um hífen copiado de um PDF, de uma exportação do InDesign ou de uma página derivada de PDF costuma ser U+2010, e depois viaja para lugares que esperam ASCII: um campo de usuário que aceita só letras, dígitos e o hífen simples; um import CSV que rejeita bytes não ASCII; um índice de busca onde «bem‐conhecido» e «bem-conhecido» são cadeias diferentes; um cheque de duplicatas que informa dois códigos de produto idênticos aos olhos como únicos. O caractere é invisível para um localizar-e-substituir que busque o hífen do teclado, porque você não consegue digitar o caractere que procura.
A correção é normalizar. Ou substitua cada U+2010 por um hífen simples — o que preserva o aspecto do texto e o torna seguro em ASCII — ou apague os hífens por completo quando o texto vai para algum lugar que os trate como ruído. O removedor de hífens deste site encontra cada membro da família por ponto de código —U+002D, U+2010, U+2011 e o hífen flexível invisível— e abre cada um em um espaço; a ferramenta de remover todos os traços os apaga, e a referência de símbolos dirá qual variante você tinha na mão.