簡體   English   中英

識別並找到英國手機號碼在字符串中的位置

[英]Identifying and finding the position of a UK mobile number in a string

我希望能夠讀取文本文件並識別手機號碼及其在字符串中的位置。 即使數字之間有空格,它也必須能夠識別數字。 我嘗試了以下操作,但是當它應該是包含兩個手機號碼的數組時,結果為false:

$fstring="A UK mobile number: 07765789098... here's another: 077 65362 723";
$pattern = "^(\+44\s?7\d{3}|\(?07\d{3}\)?)\s?\d{3}\s?\d{3}$^";
preg_match ($pattern, $fstring, $matches, PREG_OFFSET_CAPTURE);

var_dump($matches);

給我:

數組(0){}

正則表達式有問題嗎?

試試這個正則表達式

$pattern = "/(\\S44+[7]+\\d{9})|(\\S44+\\s+[07]+\\d{1}+\\s+\\d{5}+\\s+\\d{3})/";

將匹配+4477657890983 +44 077 65362 723

第一部分不會尋找行首或字符串的開頭,它將在任何地方都找不到電話,之后我會發現它是否具有7或07作為不同的字體樣式,然后它將匹配9位數字。

然后你去搖滾。 並檢查您那里沒有+44的字符串。

$pattern = "/((\\S44)?+0?[7]+\\d{9})|((\\S44+\\s)?+[07]+\\d{1}+\\s+\\d{5}+\\s+\\d{3})/";

這將與077657890981 077 65362 7232 +4477657890983 +44 077 65362 723

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM