Как проверить с помощью Javascript входной тег типа text в форме html, чтобы его содержимое было арабским / английским / номером?

#javascript #numbers #validation

#javascript #числа #проверка

Вопрос:

Как проверить с помощью Javascript входной тег типа text в форме html, чтобы его содержимое было одним из следующих:-

  • ТОЛЬКО арабские или английские символы — ИЛИ-
  • ТОЛЬКО арабские и английские символы — ИЛИ-
  • Только арабские символы — ИЛИ-
  • Только английские символы — ИЛИ-
  • Только номер — ИЛИ-
  • Только арабские символы и номер — ИЛИ-
  • Только английские символы и номер — ИЛИ-
  • ТОЛЬКО арабский или номер — ИЛИ-
  • ТОЛЬКО английские символы или номер — ИЛИ-
  • Только арабские или английские символы или номер — ИЛИ-
  • Номер телефона — ИЛИ-
  • Электронная почта — ИЛИ-
  • Английская строка, начинающаяся с определенного символа, такого как ‘A’ — ИЛИ-
  • Английская строка, которая заканчивается определенным символом, таким как ‘A’ — ИЛИ-
  • Английская строка, содержащая определенный символ, такой как ‘A’ — ИЛИ-
  • Английская строка, которая не содержит определенного символа, такого как ‘A’

Заранее спасибо ..

Комментарии:

1. есть ли какой-либо конкретный способ узнать, является ли введенный текст arabic или нет??

2. Разве это не «Любая комбинация английского / арабского / цифр»?

3. @diEcho, это мой вопрос, как я нахожу арабские символы и проверяю, соответствует ли входной текст диапазону этих символов?

4. @Alex K Я имею в виду, что у каждого из них есть свое правило проверки, поскольку мне не нужно одно правило проверки, которое собирает все эти условия. На практике вам понадобятся некоторые или все эти проверки, поэтому ответ на этот вопрос будет справочным для меня и для всех, кому нужен ввод текста.

Ответ №1:

Во-первых, мне нужно определение символов «английский», «арабский» и «Цифры».

  1. Определение границы английского символа должно включать, по крайней мере, a-z, A-Z. Также должны быть включены символы, не являющиеся словами (запятая, точка, круглые скобки), но поскольку вы не указали цель вашей проверки, я ограничу их до a-z, A-Z.
    Английское регулярное выражение: [a-zA-Z]
  2. Я не владею арабским языком, поэтому я включаю все символы, определенные в этом источнике.
    Регулярное выражение: /[u0600-u06ffufb50-ufdffufe70-ufeff]/
  3. Числа определяются как d (в JavaScript: 0-9 ).
    Регулярное выражение: d (равно [0-9] в JavaScript)
  4. Начало и конец строки сопоставляются с помощью ^ и $ , используя регулярные выражения.

Собрал:

  • ТОЛЬКО арабские и / или английские символы — ИЛИ-
    /^[a-zA-Zu0600-u06ffufb50-ufdffufe70-ufeff] $
  • Только арабские символы — ИЛИ-
    /^[u0600-u06ffufb50-ufdffufe70-ufeff] $/
  • Только английские символы — ИЛИ-
    /^[a-zA-Z] $/
  • Только номер — ИЛИ-
    /^d $/
  • Только арабские символы и / или номер — ИЛИ-
    /^[du0600-u06ffufb50-ufdffufe70-ufeff] $
  • Только английские символы и / или номер — ИЛИ-
    /^[dA-Za-z] $/
  • Только арабские и / или английские символы и / или номер — ИЛИ-
    /^[a-zA-Zdu0600-u06ffufb50-ufdffufe70-ufeff] $/
  • Номера телефонов или номера телефонов слишком зависят от языка, создайте свой собственный RE
  • Электронная почта — ИЛИ-
    ^[A-Z0-9._% -] @[A-Z0-9.-] .[A-Z]{2,4}$ источник 2 (очень простое почтовое регулярное выражение)
  • Английская строка, начинающаяся с определенного символа, такого как ‘A’ — ИЛИ-
    /^A/
  • Английская строка, которая заканчивается определенным символом, таким как ‘A’ — ИЛИ-
    /A$/
  • Английская строка, содержащая определенный символ, такой как ‘A’ — ИЛИ-
    /A/
  • Английская строка, которая не содержит определенного символа, такого как ‘A’
    ^[^A] $

Конечно, английский набор символов должен включать больше символов, чем a-zA-Z если бы вы проверяли предложения. Я рекомендую использовать [x20-x7e] вместо [a-zA-Z] , поэтому также доступны часто используемые символы пунктуации.


Ссылки / Смотрите также

Комментарии:

1. Большое спасибо за ваш хороший ответ на мой простой вопрос, который, я уверен, будет полезен для меня и других, кому требуется проверка javascript в их веб-разработке.