텍스트 파일에서 보이거나 보이지 않는 모든 문자(BOM, 방향 표시, 줄 바꿈 등의 문자)를 면밀히 조사하는 데 사용할 수 있는 소프트웨어가 있습니까?
문자의 유니코드 이름을 표시하는 것도 유용한 기능입니다.
프로그래밍 언어로 구문 분석하기 전에 텍스트 파일을 분석하는 데 이러한 앱을 사용하고 싶습니다.
답변1
좋은 16진수 편집기가 아마도 최선의 선택일 것입니다. FrHed를 사용해 보세요(http://frhed.sourceforge.net/en/) 창문에 있거나 축복을 내리면 (http://home.gna.org/bless/) 리눅스에서.
답변2
그만큼바벨패드편집기는 훌륭합니다. 문자 뒤에 커서를 놓으면 유니코드 번호와 유니코드 이름이 표시됩니다. 그리고 문자에 대한 많은 유니코드 속성을 보여주는 내장된 유니코드 정보 뷰어가 있습니다. 불행히도 BOM을 표시하는 대신 처리하고 줄 바꿈 문자를 표시하는 대신 해석하기도 합니다. 이를 변경할 수 있는 방법이 있을 수 있습니다. 그 문서는 ... 음, 그것의 가장 좋은 부분은 아닙니다. 그러나 LRM과 같은 보이지 않는 컨트롤을 표시하고 공간과 중단 없는 공간 등을 구별할 수 있습니다.
답변3
어쩌면 이것이 도움이 될 수도 있지만 대답은 Stack Overflow에 더 적합합니다. 나는 당신이 원하는 것을 수행하는 Perl로 작은 파서를 만들었습니다. 아쉽게도 여기에는 하이라이트가 없습니다.
#!/usr/bin/perl
use strict; use warnings;
use feature qw(say);
use Data::Dumper;
use Unicode::String;
use utf8;
my $line_no = 1;
# Read stuff from the __DATA__ section as if it were a file,
# one line at a time
while (my $line = <DATA>) {
# Create a Unicode::String object
my $us = Unicode::String->new($line);
# Iterate over the length of the string
for (my $i = 0; $i < $us->length; $i++) {
# Get the next char
my $char = $us->substr($i, 1);
# Output a description, one line per character
printf "Line %i, column %i, 0x%x '%s' (%s)\n",
$line_no, # line number
$i, # colum number
$char->ord, # the ordinal of the char, in hex
$char->as_string, # the stringified char (as in the input)
$char->name; # the glyph's name
}
# increment line number
$line_no++;
}
# Below is the DATA section, which can be used as a file handle
__DATA__
This is some very strange unicode stuff right here:
٩(-̮̮̃-̃)۶ ٩(●̮̮̃•̃)۶ ٩(͡๏̯͡๏)۶ ٩(-̮̮̃•̃).
이것이 무엇을 하는지 봅시다:
- 파일 핸들(섹션
DATA
은 이와 같이 사용할 수 있음)에서 한 줄씩 읽습니다. - 해당 줄에서 유니코드 문자열을 나타내는 개체를 만듭니다.
- 해당 문자열의 문자를 반복합니다.
- 각 문자에 대한 이름, 번호 및 내용 출력
정말 간단합니다. 어쩌면 당신은 그것을 PHP에 적용할 수 있을 것입니다. 하지만 이름에 대한 편리한 라이브러리가 있는지는 모르겠습니다.
도움이 되길 바랍니다.
나는 여기에 웃는 것들을 들어올렸다:٩(•̮̮̃•̃)Ҷ와 같은 스마일 문자는 어떤 유니코드 문자로 구성됩니까?
답변4
나는 추천하고 싶다메모장++. 보기->기호 표시로 이동하여 "모든 기호 표시"를 선택하면 이름과 함께 보이지 않는 문자가 표시됩니다. 예를 들어, 사용 중인 줄 바꿈 형식에 따라 줄 바꿈을 LF, CRLF 또는 CR로 표시합니다.