0

我有一个像“firstname lastname(email)”这样的字符串,我想从 php 中的这个字符串中提取“email”。我该怎么办?任何解决方案...

4

4 回答 4

1

使用正则表达式和preg_match()

例如匹配括号中的任何内容:

preg_match ('/\((.+)\)/', $subject, $matches);

例如或解析电子邮件:

preg_match ('/^([\w\.-]{1,64}@[\w\.-]{1,252}\.\w{2,4})$/', $subject, $matches);
于 2012-11-01T08:41:01.877 回答
1

使用这个函数preg_match()

preg_match_all("/[\._a-zA-Z0-9-]+@[\._a-zA-Z0-9-]+/i", $string, $email);

变量$email[0]保存从变量中提取的电子邮件$string。如果您有许多此类电子邮件,则数组变量的索引会增加$email

于 2012-11-01T08:45:08.180 回答
0

在哪里

$str = "firstname lastname(email)";

尝试

$email = substr($str, stripos($str,"(")); // still has closing ) 
$email = substr($email, 0,strlen($email)-1); // removes )
于 2012-11-01T08:33:02.650 回答
0

试试代码

 $str = "firstname lastname(email)"; //Given string 
 $begin =  strpos($str , "(") + 1;    //string position of first letter of email
 $length =  strpos($str , ")") - $begin; // Total length of email

 echo substr($str , $begin  , $length );  // using substr php function

谢谢

于 2012-11-01T08:50:54.020 回答