【发布时间】:2020-01-12 22:14:24
【问题描述】:
我正在尝试提取长文本的一部分,例如有关照顾植物的信息。文本包含段落和空行。我无法捕获我想要的特定文本,第二个问题是提取的文本中没有显示最后一个单词,最后一个问题是我的搜索从行首开始。
我尝试使用不在行首的单词来搜索我想要提取的文本,它可以正常工作,只是所需文本的末尾缺少一个单词,并且如果该单词是新的行,它根本不会显示任何结果。 我使用https://scriptun.com/tools/php/preg_match 进行测试
//开始搜索的第一个词是'How to'。我也想捕捉它 // 我想要的文本结束的第二个单词是 '(optional):'
'/(?=How to).*?\s(?=\(optional\):)/'
我用来测试的示例文本是:
//文本在此之前..
如何照顾裂叶植物
裂叶喜林,也称为 Monstera deliciosa 或 swiss 奶酪植物,是一种大型、受欢迎、易于护理的室内植物, 真正属于喜林属植物。有很多混乱 关于如何称呼这种植物;各种名字都变成了 多年来可互换。
这里有更多信息(可选):
//这里还有更多文字
我想从以 '(optional):' 结尾的单词 'How to' 中提取所有文本。无论中间有多少行或段落
预期提取的文本:
如何照顾裂叶植物
裂叶喜林,也称为 Monstera deliciosa 或 swiss 奶酪植物,是一种大型、受欢迎、易于护理的室内植物, 真正属于喜林属植物。有很多混乱 关于如何称呼这种植物;各种名字都变成了 多年来可互换。
这里有更多信息(可选):
谢谢
【问题讨论】:
标签: php regex preg-match