在PHP中检测电话号码格式

adi*_*dit -2 php regex

我有大约1万个字符串,我想从中提取电话号码,一些电话号码格式如下:

08978803929
085282486601
081284671191
+6285722345678
Run Code Online (Sandbox Code Playgroud)

模式如下,它是从08开始的连续数字串,可以是11位或12位.它前面还可以有+62的区号.如何在PHP中使用正则表达式提取所有这些字符串?

为了使它更简单,我想检测以08或+62或仅62开头的字符串

anu*_*ava 5

你可以使用这个正则表达式:

^(\+?62|08)[0-9]{9,11}$
Run Code Online (Sandbox Code Playgroud)

说明:

- ^ and $    - Line start and Line end
- (\+?62|08) - starting with 62 OR +61 OR 08
[0-9]{9,11}  - match 9 to 11 digits
Run Code Online (Sandbox Code Playgroud)