私はRs.18000のための新しい携帯電話を持って、私の新しい携帯電話番号は9097123456で、私の固定電話番号は040から2で、私の電子メールIDが[email protected]あるこの文字列から電話番号と電子メールIDだけを抽出する方法は?
のような多くのSMSを持っている -
ここで、msg文字列全体から電話番号と電子メールIDだけを取り出し、別の文字列変数に格納したいとします。これを行う方法?
私はRs.18000のための新しい携帯電話を持って、私の新しい携帯電話番号は9097123456で、私の固定電話番号は040から2で、私の電子メールIDが[email protected]あるこの文字列から電話番号と電子メールIDだけを抽出する方法は?
のような多くのSMSを持っている -
ここで、msg文字列全体から電話番号と電子メールIDだけを取り出し、別の文字列変数に格納したいとします。これを行う方法?
regular expressionsを使用してください。電話番号、電子メールなどに一致する式を提供する豊富なリソースがあります。
正規表現を見てください。
はここを参照してください:あなたは、PHPとregexpressionsで、文字列から電話番号や電子メールを抽出するためのいくつかのメソッドを与えられているhttp://komunitasweb.com/2009/03/10-practical-php-regular-expression-recipes/
。
$email = "[email protected]";
if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$email)) {
echo "Your email is ok.";
} else {
echo "Wrong email address format";
}
私はそれが保存される場所を示すために、++ $でwhileループでメールアドレスを引き出すためにそれを変更し、配列に格納することができます。電話番号は
$phone = "(021)423-2323";
if (preg_match('/\(?\d{3}\)?[-\s.]?\d{3}[-\s.]\d{4}/x', $phone)) {
echo "Your phone number is ok.";
} else {
echo "Wrong phone number.";
}
これは正規表現を使用する必要があります。
各作業を行い、それぞれのRedExで電子メールと地上回線番号を確認してください。
ALGO
for each word in SMS
if email-RegEx matches word
save email
else if landLineNumber-RegEx matches word
save landLineNumber
end if
end for
return email,landLineNumber
あなたはここのように、この目的の正規表現を使用することができ、電子メール
^にマッチする正規表現です[_ A-ZA-Z0-9 - ] +(\ [_ A-。 (A-Za-z0-9)+(A-Za-z0-9)+) [A-Za-z0-9] +(A-Za-z0-9)+ })$
この正規表現の説明
次のリンクにアクセスしてください Regular Expression
ちょっとおおまかなコードで説明できますか? – xyzandroid
@xyzandroid:コードを尋ねるのではなく、何かを試してみてください。 – home
確かに。 http://www.ke-cai.net/2010/02/extract-email-address-from-text-using.html – Bostone