How to do unfolding RFC 822

2020-02-15 07:36发布

问题:

I am trying to write a vCard Parser and am having trouble unfolding lines. As you can see here: http://www.faqs.org/rfcs/rfc822.html look for "unfolding" it says that all the following are valid:

Long string<return>
<tab>continue

Long string<return>
<tab>(n*<tab>)continue

Long string<return>
<space>continue

Long string<return>
<space>(n*<space>)continue

How do I unfold this? Is there a regex for this? I am using PHP if a class has been written I will use that :)

回答1:

You could use this to remove those foldings:

$output = preg_replace('/\r\n(?:[ \t]+)/', '', $input);