如何建立印度尼西亚电话号码正则表达式

本文关键字:印度尼西亚 电话号码 正则表达式 建立 何建立 | 更新日期: 2023-09-27 17:56:50

这些是印度尼西亚的一些电话号码

08xxxxx(由最小 11 个字符长度组成)

08xx

我发现这个很有用

Regex regex = new Regex(@"08[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]");

但是,它只支持 12 个字符,如果我将它们更改为以下正则表达式

Regex regex = new Regex(@"08[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]");

它仅支持 11 个字符,如何使正则表达式用于验证以 08 开头且最小长度为 11?

如何建立印度尼西亚电话号码正则表达式

^08[0-9]{9,}$

{9,}的意思是"至少9",但可能更多。

我将其更改为 9 以说明两个前导数字(加起来为 11)。

08'd{9,10}

翻译为"以08开头";最少 11 位,长度为 12 位。

编辑:计数。

这个模式怎么样?

^08'd{9,10}$

这将检查 11 到 12 个字符,包括08

我会添加更完整的版本,它们在这里(带有数字分组)

(['['(])?(?:('+62)|62|0)'1? ?-? ?8(?!0|4|6)'d(?!0)'d'1? ?-? ?'d{3,4} ?-? ?'d{3,5}(?: ?-? ?'d{3})?'b

它将接受这样的格式

(0811) 123 123

[62] 812 1234567

0812 345 6789

+62856123456789

0878-123-123-123

[+62823] 1234 - 56789 ---> 我相信这是最长的电话号码,因为写这篇文章的时候

(('+62 8'd{2}([ -])|08'd{2}([ -]?)|'+628'd{2})'d{4}('3'4)'d{2,5})

这将接受最常用的样式,例如

08xx xxxx xxxx
08xxxxxxxxxxxx
08xx-xxxx-xxxx
+628xxxxxxxxxx
+62 8xx xxxx xxxx
+62 8xx-xxxx-xxxx此外,这将检查 11-13 个长数字

不起语法虽然