Php 将@之后的内容删除到电子邮件中?

Php 将@之后的内容删除到电子邮件中?,php,Php,假设我有一些电子邮件:一些_email@yahoo.com 首先,我想删除@之后的所有内容 最后,删除前一个操作中剩余的与电子邮件地址格式中允许的特殊字符(如“”、“”或其他允许的特殊字符)匹配的任何内容,如果是这样的话,camile会将单词中的第一个字母驼峰 有可能吗?我该怎么做?试试这个 $str= "abc_abc@xyz.com"; $part = explode('@',$str); $left_part = $part[0]; $left_part = preg_replace('/

假设我有一些电子邮件:一些_email@yahoo.com

首先,我想删除@之后的所有内容

最后,删除前一个操作中剩余的与电子邮件地址格式中允许的特殊字符(如“”、“”或其他允许的特殊字符)匹配的任何内容,如果是这样的话,camile会将单词中的第一个字母驼峰

有可能吗?我该怎么做?

试试这个

$str= "abc_abc@xyz.com";
$part = explode('@',$str);
$left_part = $part[0];
$left_part = preg_replace('/[^a-zA-Z0-9_ -%][().][\/]/s', '', $left_part);
echo $left_part;
为您提供一些信息_email@yahoo.com,它将输出“一些电子邮件”


Live action

没问题,它与PHP没有太大区别。如果你只是想检查它是否是一封有效的电子邮件,你可以使用filter_var-不,我已经有一个正则表达式来检查电子邮件是否有效,我只想做一些像@Hasan Khan写的那样的事情。
function filter($mail){

    $exp    = explode('@',$mail);
    $char   = array('.','_','-');
    $new    = str_replace($char, '', $exp[0]);

    return strtolower($new);
}

$mail   = 'some_email.new@yahoo.com';
echo filter($mail);
function Parse($text)
{
    list($text) = explode('@', $text);
    $text = preg_replace('/[^a-z0-9]/i', ' ', $text);
    $text = ucwords($text);
    return $text;
}