正则表达式为伊朗ID序列号

问题描述 投票:-2回答:2

我需要一个正则表达式来匹配伊朗ID序列号,这是一个非拉丁字母的第一个字母,在B或非拉丁字母的范围内。

我们需要验证的文本应采用以下格式:

الف/12 123456
ب/25 123456
ج/11 123456

ps:表达式以字母开头。 (StackOverflow不支持RTL)

我到目前为止的尝试:

(\bالف\b|[ب-ی]{1})[\/][0-9]{2}\s{1}[0-9]{6} 

https://regex101.com/r/FsZFN5/1

c# regex html5 validation
2个回答
2
投票

波斯语字符在阿拉伯语Unicode块中,范围从U + 0600到U + 06FF(在字符类中指定为\ u0600- \ u06FF)。

对于正则表达式以下的英文字母匹配:

/[0-9]{6}\s[0-9]{2}\/[a-z]{1}/

并且为了支持波斯语字母,只用a-z替换\u0600-\u06FF

/[0-9]{6}\s[0-9]{2}\/[\u0600-\u06FF]{1}/

1
投票

以下是我对伊朗人ID的非拉丁序列号的解决方案:

([\u0627][\u0644][\u0641]|[\u0628-\u06CC])[\/][0-9]{2}\s{1}[0-9]{6}

https://regex101.com/r/FsZFN5/2

© www.soinside.com 2019 - 2024. All rights reserved.