2016-12-22 6 views
1

ファイル(Resume)からすべての人の名前(David、Jonathan、Ferdinand)を取得する必要があります。私は、正規表現の助けを借りて、メールのIDと電話を得ることができる与えられた文字列laravelで人々の名前を見つける方法は?

$email = '/[a-z0-9_\-\+][email protected][a-z0-9\-]+\.([a-z]{2,3})(?:\.[a-z]{2})?/i'; 

$phone = ^\(?\+?([0-9]{1,4})\)?[-\. ]?(\d{10})$ 

しかし、私はどのように名前を見つけるのですか?レジュメ内の詳細の順序はどのような形式でもかまいません。これを達成するための任意の特定の方法があります私はwordsAPIを使用して

$word = WordsApi::word('name'); 
if($word->synonyms()==null) 
{ 
    $name = $word; 
} 

ような何かをしようとしたが、残念ながら、それはフェルナンデスなどジョン、マシュー、のような名前の値を返しますか?

答えて

0

電話番号とメールアドレスは、形式が非常に標準的で簡単に検索できるため、簡単に見つけることができます。一方、名前は、電話番号と電子メールと同じ意味で厳密な形式を使用しないでください。

メールアドレスを使用して名前を見つけることができます。ビジネス上の理由から、ほとんどの人は自分のメールアドレスとして姓名を使います。多くの企業では、最初の姓または完全な最初と最後のイニシャルを使用する場合があります。

John Smithを探していて電子メールが[email protected]の場合は、PHPを使用してsmithと前の単語を次の空白文字または行末/先頭まで検索できます。

$email = '[email protected]' 
$_name = substr($email, 1, strpos($email, '@')-1); 
preg_match('/(\w+\s'.$_name.')/mi', $resume, $name); 

これは、最初の初期姓のメールフォーマットを前提としています。あなたは完全な最初の完全な、姓の完全な最初の最初のイニシャルなどをテストする正規表現が必要になり、うまくいけばそれらの1つはあなたの名前を取得します!

+0

この場合は大丈夫です。ジョンスミスが[email protected]のような電子メールを使用するとどうなりますか? –

+0

@NaveenKumarさて、あなたは運が悪いです。私の答えで指摘したように、First、Last、Last、First以外のあなたの名前を書くための基準はありません。そのため、履歴書から名前を選ぶことは非常に困難です。 –

関連する問題