字符串替换(php)

时间:2011-09-02 11:03:41

标签: php regex

任何人都可以建议一个能够自动剥离空间的快速功能。 PHP中的字符串中的撇号。

我只需要在将字符串用作电子邮件地址之前从字符串中删除任何不需要的东西。

例如。

$email = "myname's@site.com  "; // need to remove the apostrope & empty space

6 个答案:

答案 0 :(得分:4)

echo preg_replace('/[\\\' ]/', '', "myname's@site.com ");

但我不相信这是正确的做法。考虑这样的事情:

if(!filter_var("myname's@site.com ", FILTER_VALIDATE_EMAIL))
    echo("E-mail is not valid");

答案 1 :(得分:2)

$email = str_replace(array("'", ' '), '', $email);

答案 2 :(得分:1)

你需要的不是str_replace而是验证电子邮件地址(你所描述的实际上是消毒,但如果电子邮件地址无效,你不想阻止输入吗?)。

这是(一个例子)用于检查电子邮件地址格式的正则表达式:

( preg_match( '/^\w[-.\w]*@(\w[-._\w]*\.[a-zA-Z]{2,}.*)$/', $_POST['email'] )

答案 3 :(得分:1)

$email = "myname's@site.com ";
$email = preg_replace("/['\s]/", '', $email);

Demo

答案 4 :(得分:1)

$remove = array(" ", "'");
$email = str_replace($remove, "", $email);

http://php.net/manual/de/function.str-replace.php

答案 5 :(得分:1)

$email = preg_replace("/(\s|')/", '', "myname's@site.com ");