Как ввести нестандартный дополнительный символ?

13 ноября 2008Технологии

tiaurus

Поделиться

0

Литер и символов в Windows значительно больше, чем есть на клавиатуре, например, нам часто требуются знаки градуса, евро, кавычки “елочкой”. Как быстро ввести не имеющийся на клавиатуре символ, например, знак евро? Я пользуюсь двумя способами, о которых расскажу далее.

Способ первый, универсальный, офлайновый.

Любой символ имеет собственный цифровой код, таким образом с клавиатуры можно вводить не только то, что числится в раскладках, но и коды символов, которые преобразуются в специальный, не имеющий аналогов на клавиатуре, Для ввода такого кода нужно одновременно нажать клавишу Alt и ввести код на блоке цифровой клавиатуры. Пример: литера “A” = Alt+065. Такие коды существуют из трех или четырез цифр. Все они собраны в таблице PC866, их количество ограничивается 255, они используются в DOS-приложениях, а также в консольных окнах. В обычных приложениях Windows эти коды могут использоваться, трансформируясь в коды таблицы Unicode, так что все эти коды нормально понимаются только в Unicode-совместимых программах.

Так как же узнать, какому коду соответствует тот или иной знак? Это легко — нужно воспользоваться таблицей символов, встроенной в Windows 2000/2003/Vista: Пуск >> Все программы >> Стандартные >> Служебные >> Таблица символов >> отмечаем “Дополнительные параметры просмотра” >> указываем набор символов “Windows кириллица”. Выбирая любой символ, замечаем в правом нижнем углу программы подсказку о комбинации клавиш, которую нужно нажать, чтобы получить его. Можно не просто посмотреть подсказки, но и скопировать любой символ в буфер обмена. Не забывайте, что корректно можно вставлять символы и из других таблиц, но использоваться они могут только в Unicode-совместимых программах. Для просмотра трехзначных кодов нужно выбирать набор символов “DOS кирилица 2”, но готовые подсказки эта таблица не показывает. В этом случае можно воспользоваться хитростью: смотрим в нижний левый угол, и в скобках замечаем шестнадцатеричное число, которое можно перевести с помощью калькулятора в инженерном режиме из HEX в DEC, получив обычное число, которое и используем в дальнейшем с клавишей Alt. На скриншоте показано, как быстро найти и добавить в буфер обмена символ евро.

В Unicode-совместимых программах, например, в Microsoft Word, можно указывать не набор символов, а целый диапазон, “диапазоны юникода”, при этом появится дополнительное окно различных группировок, математических, денежных, технических. Это намного упрощает поиск нужного символа, который можно скопировать в буфер обмена.

Способ второй, быстрый, онлайновый.

Есть сайт http://www.copypastecharacter.com/, на котором собраны часто используемые специальные символы. Для копирования любого из них в буфер обмена достаточно просто кликнуть по нему. Для копирования нескольких символов одновременно нужно удерживать Alt.

PS3™ | Использование клавиатуры

Меню XMB™ > Использование клавиатуры

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

(1)

Курсор

(2)

Поле ввода текста

(3)

Отображение параметров предиктивного режима

(4)

Функциональные клавиши

(5)

Отображается, когда включен предиктивный режим

(6)

Отображение режима ввода


Список клавиш

Отображаемые клавиши могут различаться в зависимости от режима ввода и других условий.

Служит для вставки символа или значка эмоции
/ / Переключение типа вводимых символов
Перемещение курсора
Удаление символов слева от курсора
Пробел
Разрыв строки
Копирование и вставка текста
Переключение на миниатюрную клавиатуру
Переключение режима ввода
Подтверждение введенных символов/выход из режима клавиатуры

Ввод символов

При использовании предиктивного режима можно ввести несколько первых букв слова, после чего отобразится список наиболее часто используемых слов, которые начинаются с этих букв. Далее с помощью кнопок со стрелками можно выбрать нужное слово. После завершения ввода текста нажмите клавишу «Ввод» для выхода из режима клавиатуры.

Подсказки
  • В некоторых режимах ввода невозможно использовать значки эмоций.
  • Языки, которые можно использовать для ввода текста, являются поддерживаемыми системой языками. Например, если в качестве языка системы задан французский язык, можно ввести текст на французском языке. Язык системы можно установить, выбрав (Настройки) > (Настройки системы) > [Язык системы].
  • Чтобы очистить поле ввода, одновременно нажмите кнопки + L1.

Использование подключенной клавиатуры

Для ввода текста можно использовать клавиатуру USB или Bluetooth® (продаются отдельно). Если во время отображения экрана ввода текста нажать любую клавишу на подключенной клавиатуре, для ввода текста можно будет использовать подключенную клавиатуру.

Подсказки
  • Подробнее о подключении клавиатуры Bluetooth® см. в разделе (Настройки) > (Настройки дополнительных устройств) > [Управление устройствами Bluetooth®] в данном Руководстве.
  • При использовании подключенной клавиатуры нельзя использовать предиктивный режим.
  • Для переноса строки в поле ввода текста нажмите ALT + ENTER. Перенести строку можно только в тех случаях, когда это применимо, например, при написании сообщения в разделе (Друзья).
  • Чтобы очистить поле ввода, одновременно нажмите кнопки SHIFT + BACKSPACE.
  • Чтобы вставить скопированный текст, нажмите Ctrl + V. Скопированный текст будет вставлен.

Использование мини-клавиатуры

При выборе значка в полном режиме клавиатуры окно будет переключено в режим мини-клавиатуры. В режиме мини-клавиатуры каждой клавише будут назначены несколько символов.

(1)

Курсор

(2)

Поле ввода текста

(3)

Отображение параметров предиктивного режима

(4)

Отображение символов, которые можно вводить с помощью выбранной клавиши.
При каждом нажатии кнопки изменяется символ, который можно ввести. Например, чтобы ввести символ [M], нажмите кнопку , затем четыре раза нажмите кнопку . Чтобы ввести [M5], нажмите кнопку , затем нажмите кнопку и после того, как будет введен символ [M], нажмите кнопку , чтобы поместить курсор после символа [M]. Затем нажмите кнопку и кнопку девять раз, чтобы ввести [5].

(5)

Функциональные клавиши

(6)

Отображается, когда включен предиктивный режим

(7)

Отображение режима ввода

Подсказка

Можно также использовать способ ввода текста одним нажатием. С помощью кнопки «Параметры» переключите способ ввода текста. При использовании ввода текста одним нажатием слова, которые можно создавать с помощью комбинации, состоящей из одной буквы (или цифры) на каждой выбранной клавише, отображаются как возможные термины.

Например, при выборе клавиши «АБВГ2» слова, начинающиеся с букв «a», «б», «в», «г» или цифры «2», отображаются в списке окна возможных терминов справа от экранной клавиатуры. При появлении символа «>» продолжайте вводить буквы нужного вам термина до тех пор, пока не появятся варианты.


Список клавиш

Отображаемые клавиши могут различаться в зависимости от режима ввода и других условий.

Ввод символа
Переключение между верхним и нижним регистром
Разрыв строки
Перемещение курсора
Удаление символа слева от курсора
Ввод пробела
Копирование и вставка текста
Переключение в режим полной клавиатуры
Отображение меню параметров
Переключение режима ввода
Подтверждение введенных символов/выход из режима клавиатуры

regex — Регулярное выражение для имени и фамилии

Я искал, искал, играл и играл с ним, и хотя оно не идеально, оно может помочь другим, пытающимся проверить имя и фамилию, которые были предоставлены как одна переменная.

В моем случае это переменная $name.

Я использовал следующий код для своего PHP:

 if (preg_match('/\b([A-Z]{1}[a-z]{1,30}[- ]{0,1}|[A-Z]{1 }[- \']{1}[А-Я]{0,1}
    [a–z]{1,30}[-]{0,1}|[az]{1,2}[-\']{1}[A–Z]{1}[az]{1,30}){2 ,5}/', $имя)
    # в приведенном выше "операторе if" нет пробела между строками.
    # вы замечаете или воспринимаете только для целей форматирования.
    #
    # пройти - успешное совпадение - сделать что-то
    } еще {
    # fail - неудачное совпадение - сделать что-то
 

Я сам изучаю RegEx, но у меня есть объяснение кода, предоставленное приятелем RegEx.

Вот оно:

Подтвердить позицию на границе слова «\b»

Сопоставить приведенное ниже регулярное выражение и записать его совпадение в число обратной ссылки 1
«([A-Z]{1}[a-z]{1,30}[ — ]{0,1}|[A-Z]{1}[- \’]{1}[A-Z]{0,1}[az]{1,30}[- ]{0,1}|[az] {1,2}[ -\’]{1}[A-Z]{1}[a-z]{1,30}){2,5}»

От 2 до 5 раз, как можно больше раз, возвращая по необходимости (жадный) «{2,5}»

* МНЕ НУЖНА ПОМОЩЬ, ЧТОБЫ ПОНЯТЬ ПОСЛЕДСТВИЯ ЭТОЙ ЗАМЕТКИ *

Примечание: я повторил саму группу захвата. Группа захватит только последнюю итерацию. Поместите группу захвата вокруг повторяющейся группы, чтобы захватить все итерации. «{2,5}»

Совпадение с любым из приведенных ниже регулярных выражений (попытка следующего варианта только в случае неудачи этого) «[A-Z]{1}[a-z]{1,30}[- ]{0,1}»

Совпадение с одним символом в диапазоне от «A» до «Z» «[A-Z]{1}»

Ровно 1 раз «{1}»

Совпадение с одним символом в диапазоне между «a» и «z» «[a-z]{1,30}»

От одного до 30 раз, максимально возможное количество раз , возвращая по мере необходимости (жадный) «{1,30}»

Совпадение с одним символом, присутствующим в списке «-» «[- ]{0,1}»

Между нулем и единицей столько раз, сколько раз возможно, возвращая по мере необходимости (жадный) «{0,1}»

Или соответствует регулярному выражению номер 2 ниже (попытка следующего варианта, только если это не удается) «[A-Z]{1}[- \’]{1 }[А-Я]{0,1}[а-я]{1,30}[- ]{0,1}»

Совпадение с одним символом в диапазоне между «A» и «Z» «[A-Z]{1}»

Ровно 1 раз «{1}»

Совпадение с одним символом из списка ниже «[- \ ‘]{1}»

Ровно 1 раз «{1}»

Один из символов «-» «- » Символ A «\»

Соответствует одному символу в диапазоне между «A» и « Z” «[A-Z]{0,1}»

Между нулем и единицей, столько раз, сколько возможно, возвращая по мере необходимости (жадный) «{0,1}»

Совпадение с одним символом в диапазоне от «a» до «z» «[a-z]{1,30}»

От одного до 30 раз, максимально возможное количество раз, возвращая по мере необходимости (жадный) «{1 ,30}»

Совпадение с одним символом, присутствующим в списке «-» «[- ]{0,1}»

Между нулем и единицей столько раз, сколько возможно, возвращая по мере необходимости (жадный) «{ 0,1}»

Или сопоставьте регулярное выражение номер 3 ниже (вся группа завершается ошибкой, если это не соответствует) «[a-z]{1,2}[ -\’]{1}[A-Z]{1}[ а-я]{1,30}»

Совпадение с одним символом в диапазоне между «a» и «z» «[a-z]{1,2}»

От одного до двух раз, максимально возможное количество раз, возвращая по мере необходимости (жадный) «{ 1,2}»

Совпадение с одним символом в диапазоне между « » и «’» «[ -\’]{1}»

Ровно 1 раз «{1}»

Совпадение с одним символом в диапазоне между «A» и «Z» «[A-Z]{1}»

Ровно 1 раз «{1}»

Соответствует одному символу в диапазоне между «a» и «z» «[a-z]{1, 30}»

От одного до 30 раз, столько раз, сколько возможно, возвращая по мере необходимости (жадный) «{1,30}»

Я знаю, что эта проверка полностью предполагает, что каждый человек, заполняющий форму, имеет западное имя, и это может уничтожает подавляющее большинство людей в мире. Тем не менее, я чувствую, что это шаг в правильном направлении. Возможно, это регулярное выражение слишком простое, чтобы гуру могли обращаться к нему упрощенно, или, может быть, есть какая-то другая причина, по которой я не смог найти приведенный выше код в своих поисках. Я потратил слишком много времени, пытаясь понять это, вы, вероятно, заметите, насколько затуманен мой разум, если вы посмотрите на названия моих тестов ниже.

Я проверил код на следующих именах, и результаты указаны в скобках справа от каждого имени.

  1. СТИВ СМИТ (провал)
  2. Стев3 Смит (провал)
  3. Стив Смит (провал)
  4. Стив Смит (провал)
  5. Steve Sm1th (перешел на Steve Sm)
  6. d’Are to Beaware (передано на Are to Beaware)
  7. Джо Блоу (сдал)
  8. Хён Кён Ву (сдал)
  9. Майк О’Нил (сдал)
  10. Стив Джонсон-Смит (сдал)
  11. Юзеф-Шмозев Химдель (сдал)
  12. О Генри Смит (сдал)
  13. Матэ д’Аррас (сдал)
  14. Мартин Лютер Кинг-младший (сдал)
  15. Центр города-Джеймс Браун (сдал)
  16. Даррен Маккарти (сдал)
  17. Джордж Де ФанкМастер (сдал)
  18. Баскетбольный мяч Kurtis B-Ball (сдал)
  19. Ахмад эль-Джеффе (сдал)

Если у вас есть базовые имена, их должно быть от одного до пяти, чтобы приведенный выше код работал, которые аналогичны тем, которые я использовал во время тестирования, этот код может быть для вас.

Если у вас есть улучшения, сообщите мне. Я только на ранних стадиях (первые несколько месяцев выяснения RegEx.

Спасибо и удачи, Steve

labels — Как четко указать пользователю, какие символы допустимы

Задавать вопрос

спросил

Изменено 8 лет, 3 месяца назад

Просмотрено 83k раз

Я пытаюсь определить лучший способ сообщить пользователю, что ввод принимает определенные специальные символы. Буквенно-цифровые символы достаточно просты, но я чувствую, что теряю ясность, когда добираюсь до таких символов, как . а также -. Я пробовал один стиль:

 Допустимые символы включают A-z, 0-9 и (._-).
 

Если круглые скобки заключают в себе допустимые символы, но когда круглые скобки недействительны, кажется, что их слишком легко принять за часть списка.

Я склоняюсь к следующему стилю:

 Допустимые символы включают A-z, 0-9, '.', '_' и '-'.
 

Но мне кажется, что одинарные кавычки все загромождают и позволяют легко потеряться в списке, особенно по мере его роста. Есть ли способ передать эту информацию, которая считается «лучшей», или на самом деле есть лучшие способы сделать это полностью?

  • этикетки
  • подтверждение

7

Беспорядок проблематичен. Подчеркивания допустимых символов может быть достаточно. Например:

Допустимые символы: A Z a z 0 9 . _ .

Также может помочь отображение их другим цветом.

0

Вот несколько советов:

  • запрещать символы только в случае крайней необходимости (я ненавижу, когда я нельзя использовать _ в никнейме)
  • отображать сообщение только для пользователя, который пытается использовать один из них. Других пользователей это не побеспокоит
  • если пользователь введет запрещенный персонаж, просто не принимайте во внимание и объясните ему почему.

загрузить источник bmml — Каркасы, созданные с помощью мокапов Balsamiq

11

Я бы посоветовал упомянуть о недопустимых символах, потому что количество недопустимых символов всегда меньше для любого требуемого ввода. Это поможет уменьшить беспорядок. См. данный пример из проводника Windows.

1

Вы можете отображать блоки каждого типа символов, например:

Допустимые символы: A-Z a-z 0-9 - _ 9.

Я бы пропустил A-Z и, возможно, даже 0-9, поскольку они, очевидно, должны быть разрешены. Для дополнительных символов я бы использовал их имена, а не символы

.

Вы также можете использовать подчеркивание, тире и точку.

7

Вы должны показать все допустимые или все недопустимые символы до того, как пользователь начнет вводить в поле. Это должно быть подсказкой. Будьте краткими, понятными и простыми.

загрузить исходный код bmml — Каркасы, созданные с помощью Balsamiq Mockups

Примеры заполнителей

Используйте поля с заполнителем, который показывает допустимый пример ввода. Примеры заполнителей указывают предпочтительный формат ввода. Это может помочь, например, в поле телефонного номера.

Сообщение в фокусе

Отображать фиксированную метку или всплывающее окно, когда пользователь вводит поле.
Пользователь увидит подсказку перед тем, как он начнет вводить ввод, поэтому он может придумать другое значение, если то, которое он хотел ввести, неверно. Это также решает возможный вопрос, который может задать пользователь перед вводом данных: «Что я должен написать здесь? Будет ли мой ввод правильным?».

Список кратких и жирных символов

Используйте краткую форму допустимых символов, например "az", а не "только буквенно-цифровые".
Гораздо проще контролировать и понимать принятые символы. Вам не нужно выяснять значение таких слов, как: «ОК, буквенно-цифровые символы — это символы от a до z с цифрами». Также разъясняет неясность, например: «разрешены ли заглавные буквы?».

Я бы также рекомендовал решение @NonNumeric с использованием полужирного шрифта в списке разрешенных символов. Это направляет внимание на суть всплывающего сообщения.

Отзыв о размытии

После того, как пользователь заполнил поле и фокус пропал, следует проверить поле.

  • Если введено правильно, поставьте галочку, указывающую на правильность ввода.
  • Если ввод недействителен, оставьте всплывающее окно там и сделайте его или пользовательское поле (или оба) красным, чтобы это указывало на то, что что-то пошло не так.

Благодаря этому, если пользователь пропустил руководство до ввода, у него есть обратная связь после его ввода. Ошибки/галочки также упрощают просмотр заполненной формы.

Один из способов справиться с этим — сначала вообще ничего не говорить, а затем информировать пользователя о вводе запрещенного символа. Если вы используете встроенную проверку и применяете ее после ввода каждого символа, пользователю (почти) даже не нужно будет уведомляться о том, какой символ запрещен.

Это зависит от того, что должно идти в поле. Если данные, которые должны быть в поле, имеют определенную форму (например, почтовый индекс или что-то в этом роде), существует очень ограниченный набор символов, которые должны оказаться там. Типы O и очень альтернативные способы ввода данных будут обрабатываться сообщением об ошибке, а остальные просто проплывут мимо, даже не заметив этого.

Возможно, это поле предназначено для данных, формат которых менее условен. В таком случае количество ошибочных вводов может достигать недопустимых уровней и требуется предварительный ввод инструкций.

Как во встроенном сообщении об ошибке, так и в случае, когда требуется информационный текст, я предпочитаю писать «Буквы и цифры», а не «A-Z, a-Z, 0-9», потому что это намного легче понять, и вы может сохранить беспорядок для специальных символов.

Пример: Пожалуйста, используйте только буквы, цифры и эти специальные символы ( _ . - )

4

Я бы сказал, что лучше всего использовать табличную структуру для четкого обозначения и выделения каждого правила:

CSS

 table{
    граница коллапса: коллапс;
}
тд {
    заполнение: 3px 6px 3px 6px;
    вертикальное выравнивание: сверху;
    граница: сплошная 1px #000;
}
 

HTML

  

Допустимые символы

<таблица> Алфавит: строчные и ПРОПИСНЫЕот A до Z
от a до z Числаот 0 до 9 Пунктуация: точка, подчеркивание, дефис.
_
-

http://jsfiddle.net/F74L8/

Итак, теперь, если ваш список растет, вам не нужно беспокоиться о том, что будущие символы испортят какое-либо форматирование, которое вы, возможно, выбрали для предыдущих символов.

6

Если вы просто разрешите вводить все символы utf8, вам не нужно беспокоиться о том, как объяснить это пользователю. И это избавит вас от головной боли при выходе на глобальный уровень с вашим приложением/веб-сайтом.

Если им нужно ввести адрес электронной почты, вы можете написать «этот адрес электронной почты недействителен в соответствии с интернет-стандартом RFC». Это намного проще, и люди поймут, почему им нужно вводить только эти символы, а не думать, что вы подлый.

3

Чтобы избежать беспорядка, но при этом предоставить всю описательную информацию, которую вы хотите заблаговременно, у вас может быть «ссылка» рядом с полем ввода, которая говорит что-то вроде «Какие символы допустимы здесь».