Повноширинні й напівширинні символи в китайському введенні

Широкі й вузькі набірні блоки
Зміст

Рядки ABC123 і ABC123 схожі, але містять різні символи Unicode. Форма, яка приймає звичайні латинські літери й цифри, може відхилити повноширинний варіант, а електронна таблиця — визнати ці значення нерівними.

Китайські методи введення можуть створювати повноширинні літери, цифри або пунктуацію поряд із китайським текстом. Різниця полягає в самих збережених символах, а не лише у шрифті чи масштабі відображення.

Поширені пари символів

Напівширинна формаПовноширинна формаТипова проблема
AAІдентифікатори не збігаються
11Числове поле відхиляє введення
,,Розділювач не розпізнається
( )( )Пошук або розбір відрізняється

Звичайний та ідеографічний пробіли також можуть виглядати схожими в текстовому полі. Початкові чи кінцеві пробіли додають ще одну причину невідповідності. Перегляньте все значення перед зміною, особливо коди товарів, контактні поля та імпортовані записи.

Схема: ABC123 → ABC123

Перетворення лише потрібних полів

Для коду товару ABC123 перетворення латинських літер і цифр дає ABC123. У китайському абзаці заміна всієї пунктуації може зіпсувати потрібне оформлення. Поле даних і опубліковане речення можуть вимагати різної обробки.

Конвертер повноширинних і напівширинних символів дає змогу вибирати літери, цифри, підтримувану пунктуацію та пробіли. Почніть із категорій, що спричиняють невідповідність, а потім порівняйте результат з оригіналом.

Зміни поза перетворенням ширини

Перетворення ширини не змінює спрощені китайські ієрогліфи на традиційні. Воно також не робить однаковими схожі літери різних систем письма. Наприклад, латинська літера та подібна кирилична потребують іншої перевірки.

Китайська крапка 。 — не просто повноширинний відповідник ASCII-крапки .. Так само не всі китайські лапки й знаки назв книжок охоплюються відповідністю повноширинних ASCII-символів. Не варто очікувати, що одне перетворення усуне будь-яку різницю в пунктуації.

Порівняння поля до й після зміни

Візьмімо умовний код товару ABC123. Перетворення лише літер дає ABC123, тож цифри залишаються повноширинними. Перетворення літер і цифр дає ABC123. Саме тому результат може здаватися частково виправленим і все ще не відповідати вимозі звичайних літер та цифр.

Тепер додаймо перед кодом ідеографічний пробіл:  ABC123. Перетворення самих літер і цифр залишає його на місці. Перетворення пробілів змінює ширину, але не видаляє їх. Якщо поле також забороняє початкові пробіли, видаліть їх окремо за правилом формату отримувача.

Зберігайте початкові нулі, коли вони належать ідентифікатору. Перетворення 001234 на 001234 не повинно давати 1234. Друга зміна — трактування як числа, а не перетворення ширини. У таблиці зберігайте очищений ідентифікатор як текст, якщо початкові нулі мають значення.

Пунктуація та структура файлу

Кома в китайському тексті може бути розділовим знаком, тоді як ASCII-кома в CSV розділяє поля. Тому заміна всіх китайських ком у сирому файлі може вплинути на розбір, якщо поле не взято в лапки належним чином. Перетворюйте текст вибраного поля, а потім експортуйте за звичайними правилами лапок для цього формату.

Так само повноширинна двокрапка в реченні та двокрапка в URL мають різні ролі. Конвертер може змінити символ, але не визначає, чи веде отримана адреса в потрібне місце. Перевіряйте посилання й структуровані значення в їхньому контексті, а не вважайте, що вужча пунктуація робить будь-який рядок правильним.

Видима ширина залежить і від шрифту. Збільшення чи заміна шрифту не перетворює A на A. Якщо проблема в точному порівнянні, перевірте або перетворіть збережений текст. Якщо йдеться лише про вигляд абзацу, змінювати символи може бути непотрібно.

Перед великим імпортом випробуйте невеликий набір із літерами, цифрами, пунктуацією та пробілами, перш ніж замінювати весь стовпець. Перевірте відомий збіг, запис із початковим нулем і запис із китайським текстом. Такий набір має показати, які категорії перетворити, а які залишити.

Після перетворення тримайте вихідні й очищені значення поруч, доки система-отримувач не прийме потрібні записи. Так змінений символ можна визначити безпосередньо, не відновлюючи його з пам’яті та не покладаючись на зворотне перетворення, яке може не повернути всі попередні варіанти.

Послідовність очищення імпортованих даних

  1. Збережіть вихідний стовпець або файл.
  2. Визначте поле з документованим форматом, наприклад цифровий код.
  3. Перетворіть потрібні категорії символів в окремій копії.
  4. Перевірте початкові нулі, пунктуацію й пробіли після перетворення.
  5. Повторно перевірте збіги або валідацію перед заміною робочих даних.

Не нормалізуйте паролі чи підписані рядки, якщо система явно цього не вимагає: зміна одного символу змінює значення. Для імен та ідентифікаторів зберігайте контрольну копію, щоб можна було відновити початковий запис.

Якщо подання також має ліміт довжини, перевірте отриманий текст у лічильнику символів. Зміна ширини може зменшити місце на екрані, не скоротивши кількості символів.

Коментарі

Завантаження…

Коментарів поки немає.