Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用post传递字符串时正则表达式不工作_Php_Regex_Post_Textarea_Newline - Fatal编程技术网

Php 使用post传递字符串时正则表达式不工作

Php 使用post传递字符串时正则表达式不工作,php,regex,post,textarea,newline,Php,Regex,Post,Textarea,Newline,我需要使用一些规则拆分电子邮件,如下所述: 因此,我在一个regex101上尝试了这个解决方案:但是,当我用php在服务器上这样做时,将电子邮件内容粘贴到一个文本框,然后通过post发送内容就不再有效了 这是我的密码: 文件teste.php: <form method="post" action="teste2.php" enctype="multipart/form-data"> <textarea name="email" cols="110" rows="30"

我需要使用一些规则拆分电子邮件,如下所述:

因此,我在一个regex101上尝试了这个解决方案:但是,当我用php在服务器上这样做时,将电子邮件内容粘贴到一个文本框,然后通过post发送内容就不再有效了

这是我的密码:

文件teste.php:

<form method="post" action="teste2.php" enctype="multipart/form-data">
  <textarea name="email" cols="110" rows="30" id="email"></textarea>
  <br />
  <input type="submit" value="Dividir" />
</form>
它会删除换行符,更糟糕的是>>此处剪切>>不会出现在它所使用的位置

使用nl2br后,输出为:

A N K U N F T 11.08.15
*** NEUBUCHUNG ***
11.08.15 xxx xxx X3 2830 14:25 17:50
18.08.15 xxx xxx X3 2831 18:40
F882129 dsdsaidsaia
F882129 xxxyxyagydaysd


A N K U N F T 18.08.15
*** NEUBUCHUNG ***
11.08.15 xxx xxx X3 2830 14:25 17:50
18.08.15 xxx xxx X3 2831 18:40
F881554 ZXCXZCXCXZCCXZ
F881554 xcvcxvcxvcvxc
F881554 xvcxvcxcvxxvccvxxcv


11.08.15 xxx xxx X3 2830 14:25 17:50
18.08.15 xxx xxx X3 2831 18:40
F881605 xczxcdfsfdsdfs
F881605 zxccxzxzdffdsfds

有人能帮我吗?提前非常感谢

您的回音问题很可能只是一个简单的错误,即在webbrowser上显示结果。从
echo$result更改最后一行
回送nl2br($result)

nl2br()
是php中的一个函数,它将换行符转换为

,并在webbrowser中正确显示

请尝试以下更新的正则表达式。您的换行代码不是
\n
,而是
\r\n
,所以这就是我们要更改的全部内容

(?:\sF\d+.*?\r\n\r\n)(\r\n)

正确,但是正则表达式不起作用,因为>>此处剪切>>不会出现在其所支持的位置。工作地点:@MiguelSousa使用nl2br后,能否显示新的输出?这会有帮助的。相信我,用输出编辑了问题。可以在这里直接测试:@MiguelSousa aha!我想这就是错误:)你没有单个
\n
在这个字符串中,你有
\r\n
啊!非常感谢!我将正则表达式转换为:“/(?:\sF\d+.*?\r\n\r\n)(\r\n)/”并工作了!
A N K U N F T 11.08.15
*** NEUBUCHUNG ***
11.08.15 xxx xxx X3 2830 14:25 17:50
18.08.15 xxx xxx X3 2831 18:40
F882129 dsdsaidsaia
F882129 xxxyxyagydaysd


A N K U N F T 18.08.15
*** NEUBUCHUNG ***
11.08.15 xxx xxx X3 2830 14:25 17:50
18.08.15 xxx xxx X3 2831 18:40
F881554 ZXCXZCXCXZCCXZ
F881554 xcvcxvcxvcvxc
F881554 xvcxvcxcvxxvccvxxcv


11.08.15 xxx xxx X3 2830 14:25 17:50
18.08.15 xxx xxx X3 2831 18:40
F881605 xczxcdfsfdsdfs
F881605 zxccxzxzdffdsfds
(?:\sF\d+.*?\r\n\r\n)(\r\n)