Регулярное выражение Только арабские символы и цифры

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

Номера не должны быть на арабском языке.

Я нашел следующее выражение:

^[\u0621-\u064A]+$

который принимает только арабские символы, в то время как мне нужны арабские символы, пробелы и числа.

Ответы

Ответ 1

Просто добавьте 1-9 (в формате Unicode) в свой класс символов:

^[\u0621-\u064A0-9 ]+$

ИЛИ добавьте \u0660-\u0669 к символьному классу, который является диапазоном арабских цифр:

^[\u0621-\u064A\u0660-\u0669 ]+$

Ответ 2

Вы можете использовать:

^[\u0621-\u064A\s\p{N}]+$

\p{N} будет соответствовать любой числовой цифре Unicode.

Для соответствия только цифре ASCII используйте:

^[\u0621-\u064A\s0-9]+$

EDIT: Лучше использовать это регулярное выражение:

^[\p{Arabic}\s\p{N}]+$

Демо-версия RegEx

Ответ 3

вы можете использовать [ء-ي] он работал у меня в jQuery JQuery forme.validate rules

для моего примера Я хочу заставить пользователя вставить 3 символа

[A-Za-Z ء-ي]

Ответ 4

использовать этот

[\u0600-\u06FF]

у меня сработало на визуальной студии

enter image description here

Ответ 5

С большим количеством попыток и редактирования я получил это для персидских имен:

[گچپژیلفقهمو ء-ي]+$

Ответ 6

Просто используйте этот код:

^[؀-ۿ]+$

Это работает для арабских/персидских четных чисел.

Ответ 7

function HasArabicCharacters(string text)

{

    var regex = new RegExp(

        "[\u0600-\u06ff]|[\u0750-\u077f]|[\ufb50-\ufc3f]|[\ufe70-\ufefc]");

    return regex.test(text);
}

Ответ 8

В PHP используйте это:

preg_replace("/\p{Arabic}/u", 'x', 'abc123ابت');// will replace arabic letters with "x".

Примечание. Чтобы \p{Arabic} совпадал с арабскими буквами, в конце необходимо передать модификатор u (для юникода).

Ответ 9

^[\u0621-\u064Aa-zA-Z\d\-_\s]+$

Это регулярное выражение должно принимать арабские буквы, английские буквы, пробелы и цифры

Ответ 10

[\p{IsArabic}-[\D]]

Арабский символ, который не является цифрой