найти электронную почту и заменить предложение в PHP - PullRequest
1 голос
/ 17 июля 2011

Как запретить людям вводить свой адрес электронной почты в поле описания, заменяя их электронную почту на некоторые формулировки, например, если пользователь ввел следующий текст:

Please contact me via joe.joey@email.com.

Я хочу, чтобы вывод был:

Please contact me via <email address is blocked>.

Я знаю базовый str_replace, но результат будет просто:

//output is Please contact me via joe.joey <email address is blocked> email.com
  $string = 'Please contact me via joe.joey@email.com.';
  $lookfor = '@'; 
  $replacewith = '<email address is blocked>';      
  $newstring = str_replace($lookfor, $replacewith, $string);

спасибо.

1 Ответ

1 голос
/ 17 июля 2011

Это идеальное время для использования preg_replace .Я немного упростил требования к действительному письму здесь (письма могут быть ужасно сложными), но что-то вроде:

$newstring = preg_replace("/[\w-]+@([\w-]+\.)+[\w-]+/", $replacewith, $string);

...