2015-10-11 2 views
-1

Я пытаюсь написать регулярное выражение, подтверждающее иорданский национальный номер/идентификатор.Регулярное выражение для проверки иорданского национального номера

Идентичность составлена ​​путем объединения информации о владельце удостоверения личности Например, для следующего идентификатора 98610589069 состоит из;

  • 986 = Год рождения (1986)
  • 1 = Пол. (1 означает мужчина, 2 означает женщина)
  • 05 = обратитесь к городу рождения.
  • 89096 = обратитесь к инкрементальному номеру для всего, родившегося в этом году, в этом городе.

Может ли кто-нибудь помочь?

+0

Это не вопрос, и я просто хочу поделиться своими знаниями. Поскольку я потратил время, чтобы написать это регулярное выражение, и я хочу сохранить других, предлагают разработчики. –

+1

Если это «ответ на свой вопрос», пожалуйста, обязательно разделите его на правильный вопрос и правильный ответ. Поскольку пост стоит сейчас, это вопрос без всякого вопроса. –

ответ

1

Вы можете попробовать это

^[90][0-9]{2}[12][0-9]{2}[0-9]{5}$ 

Что это будет сделать, это

[90][0-9]{2} - matches 000 to 999 (year 1900 to year 2099, assuming the date range) 
[12] - matches 1 or 2 for gender 
[0-9]{2} - matches 00 to 99 (assuming city code 00 - 99) 
[0-9]{5} - 5 digit sequence number 

Вот рабочие демонстрации в regex101 и regexr.

Таким образом, основные вопросы, которые я вижу в ваших Regex являются
(1) Вы не соответствующий код города
(2) Вы принимаете последнюю часть как длина = 6

+0

Я пробовал, но он не работал со мной. –

+1

Я вижу, что это работает здесь https://regex101.com/r/rS3rT5/1 –

+0

его право я могу видеть, можете ли вы попробовать его использовать http://www.regexr.com/ –

1

Попробуйте это: ^[0-9]{3}[12][0-9]{7}$