Como posso extrair símbolos chineses do texto [duplicado]

1

Não é possível postar símbolos de texto em chinês aqui, mas basicamente desejo remover todas as linhas que não contêm pelo menos um símbolo chinês.

link

Como posso extrair isso para que pareça

link

    
por Teddy291 01.10.2015 / 02:43

2 respostas

1

Coloque seus dados no arquivo data e execute:

perl -CSD -lne 'print if /\p{Han}/' data

Veja também:

por 01.10.2015 / 03:46
1

O que você deseja corresponder é algo dentro de um dos blocos Unicode para caracteres chineses . Isso significa que você precisa usar algo que suporte Unicode e, em seguida, corresponder qualquer linha que tenha um caractere que esteja dentro de um desses blocos.

Infelizmente, grep parece não oferecer suporte ao Unicode muito bem. No entanto, o Python 3, portanto, se você tiver isso, o script a seguir fará o que você precisa:

import sys

sys.stdout.write("".join( 
   line for line in sys.stdin.readlines()
   if any(    0x4e00 <= ord(ch) <=  0x9fd5    # CJK Unified Ideographs
          or  0x3400 <= ord(ch) <=  0x4dbf    # CJK Unified Ideographs Extension A
          or 0x20000 <= ord(ch) <= 0x2a6d6    # Extension B
          or 0x2a700 <= ord(ch) <= 0x2b73c    # Extension C
          or 0x2b740 <= ord(ch) <= 0x2b81d    # Extension D
          or 0x2b820 <= ord(ch) <= 0x2cea1    # Extension E
          for ch in line)))
    
por 01.10.2015 / 03:17