2013-02-17 48 views
1

任何人都可以帮我解决这个问题。 '>'符号的问题 当电子邮件被转发时,一些电子邮件客户端会在电子邮件的每一行之前添加“>”符号。例如:从每一行中删除一个字符或字符

This is an example of forwarded text 

变为:

> test message 

如果这样做了很多次,文字可以变得不可读:在群体之间

>>>>>>>>>>>>>>>>>>> test message 
>>>>>>>>>>>>>>>>> test message 

甚至有可能出现的空间“>”符号如下:

>> >>>>>> >>>>>>>>> test message 

我需要删除每行这些文字和清理电子邮件内容

任何人帮我找出一个正则表达式来解决这个问题

+0

我只是试图将内容以文本区域复制和同时按下转换,我需要得到具有了“>”符号 – AGK 2013-02-17 10:11:34

回答

1
function strip_forward($input) { 
    return preg_replace("/^[> ]+/m","",$input); 
} 

//////////////////////////////////////////////// 

$input = ">>> >> > Test\n". 
     ">> Test\n". 
     "> Test\n". 
     "Test"; 

echo $input."\n\n\n"; 
echo strip_forward($input); 

测试在这里:http://codepad.org/I1Ddfwte

+0

其工作......谢谢.. – AGK 2013-02-17 10:44:24

2

$修剪=的preg_replace(“/ ^([> \ s] +)/ m','',$ content);

+0

你使它变得更好了新的内容和比我之前! :) +1 – gd1 2013-02-17 10:19:20

+0

它只会取代第一次出现。您需要使用/ g修饰符来替换所有这些修改器 – Achrome 2013-02-17 10:19:58

+0

在PHP中,不允许使用g修饰符。在这种情况下也是没有必要的,因为每条线都将被分开考虑。 – gd1 2013-02-17 10:21:49

相关问题