2012-02-15 14 views
0

PHPで文字列をトリミングして、特定のテキストのみを文字列から取得できるようにしようとしています。PHPで特定のテキストを文字列から削除する

私は、[email protected]という文字列に電子メールを格納しています。

「@」の後のテキストを削除して、「some_name」だけにするにはどうすればよいですか?

+0

タグを変更するのはなぜですか? – Kushan

+0

なぜあなたは質問を読んでいないと "PHP"と表示されますか? – cHao

+0

@ Kushan申し訳ありませんが、投稿した後に間違ったタグを付けたことに気付きました。同時にAndroidとPHPが多すぎます。 – DroidMatt

答えて

-1

正規表現と@記号を使用して分割することができます。これは、 'some_name'を取得するために使用できる2つの文字列を返します。

http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html

+1

この質問はもともと「java」なんかでタグ付けされていましたか?今のところ答えのいくつかはPHPと関係がありません。 – cHao

-1
String s = "[email protected]"; 
String name = s.substring(0,s.indexOf("@"); 
+3

これはPHPではありません! –

+0

申し訳ありませんが、私の間違いでした。私はタグを変更しました!しかしこれも便利です!ありがとう! – DroidMatt

2
$str = '[email protected]'; 
$strpos = strpos($str, "@"); 
echo $email = substr($str, 0,$strpos); 

あなたが行うことができますPHPで

4

@の前に文字列を取得し、これを試すことができます。

$string = '[email protected]'; 
$res = explode('@', $string); 
echo $res[0]; 

それとも、正規表現を使用することができ、文字列関数を中PHPなど...

+1

regexpを使用しない場合は+1 –

+0

こんにちは、resを文字列に変換するにはどうすればよいですか? – DroidMatt

+0

最初の配列要素を変数に割り当てることができます: '$ name = $ res [0]; echo $ name; ' – mlinuxgada

3

substr

$mail = "[email protected]"; 
echo substr($mail, 0, strpos($mail, '@')); 

explode

list($name, $domain) = explode('@', $mail); 
echo $name; 

あなたは、あなたがそれをスキップすることができます$ドメインを必要としない場合:あなたはこれを行うには、両方の方法を知っている必要があります

list($name) = explode('@', $mail); 

詳細listについて

デモ:http://ideone.com/lbvQF

関連する問題