1

Web ページから電話番号をスクラップするための小さなスクリプトを書いています。このページには、以下のようなさまざまな形式の電話番号があります

-PH:(07) 46 3000 66, BUSINESS HOURS, 9-5 MON-FRI, 9-12 SAT-SUN.
-Please phone 54974211 or 0411053074 both between 10 am – 8 pm or 
-or Phone 07 5497 1000 if you get 
-Email or ph 0755431528. 
-Phone 0414 791 796 
-Or ph 0418117617

私はいくつかのregxパターンを使用しました

preg_match_all('/([\w+\.]*\w+@[\w+\.]*\w+[\w+\-\w+]*\.\w+)/is',$pagecontents,$results);
var_dump($results);

しかし、この種の電話番号をすべて取得する方法がわかりません。誰でも preg_match またはその他の PHP の方法を使用して、ページからあらゆる種類の電話番号を取得するのを手伝ってくれます。ありがとうございました

4

3 に答える 3

1

これで試してみてください: \(?\d+\)?(\s*\d+){3}.

于 2013-10-12T13:21:27.800 に答える
1

Web サイトからデータを消去した私の経験から、すべての電話番号を (フリー テキストから) 取得することは不可能です。

あなたのテキストの例を使ってこれを試してください

preg_match_all('/(ph:|ph |phone)([\(\)\d or\-]+?)([^\(\)\d or\-]|$)/is',$pagecontents,$results);
var_dump($results[2]);
于 2013-10-12T13:26:13.480 に答える