php - 如何使用php中的preg_match_all函数从peragraph获取新行?

标签 php preg-match

我有一个带有一些新行的段落:

 First line

Second line

Third line

 And this is the last line

我想从上面的图表中获取第二行。

所以我想要的结果应该是:

 "Second line"

我已使用 preg_match_all() 函数尝试了以下脚本,但我不知道为什么它不起作用。

 <?php
 $pera="First line

 Second line

 Third line

  And this is the last line";


 preg_match_all("#\n+{2}.*+#",$pera,$results);
print_r($results);

你知道如何从段落中获取第二行吗?

非常感谢任何帮助。

谢谢!

最佳答案

仅出于演示的目的,explode 的性能确实更好,但如果您确实想要/必须使用正则表达式,请不要使用 preg_match_all。这使其成为全局的,但您不需要它,因此请使用 preg_match。然后,更改模式:

\n{2}.*

这将匹配第二行,包括前导换行符。

https://regex101.com/r/jA3dL9/1

如果您想匹配不带换行符的情况,请使用捕获组:

\n{2}(.*)

关于php - 如何使用php中的preg_match_all函数从peragraph获取新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30438790/

相关文章:

php - 如何在 Android 中 Facebook 登录后将 Facebook 详细信息插入数据库

javascript - 无法连接到数据库-MySQLi错误

php - 使用正则表达式 preg_match 获取 id video vimeo

php - FFMPEG (2.5.7) 来自 PHP 的进度条

php - 使用复选框值进行sql查询

javascript - 识别相同的 "Feeling Lucky"搜索

php - 如何正则表达式匹配具有不同结尾的文本?

php - 使用 php 检查字符串是否包含 10 位数字但每个数字后有空格

php - 如何将字符删除到字符串中?

正则表达式匹配任一关键字最后一次出现的所有内容