如何从文章的第二部分中提取随机句子?
例如,我将有这篇文章:
“中国共产党历史第一卷”是党的官方自传中的第一篇文章,出现在2002年。它的作者对于出生,成长和胜利的叙述有着丰富的经验,涵盖了多年在1921年和革命之间,在1949年。之后,历史变得更加晦涩。
第二卷,从1949年到1978年,不得不经历一个按时间顺序排列的清洗,饥荒,政策灾难以及许多生活官员宁愿留下未经审查的尴尬历史文物的雷区。这本书长达一千七百四十四页,编辑了十六年。它需要四次重大改写。它由64个不同的政府和党派机构进行审查和清理,然后接受其页面中提到的最强大家族的线路编辑。到2011年发布时,原来的三位编辑石忠权中只有一位的人已经活了很长时间才能看到它。 “写历史并不容易,”他对记者安德鲁希金斯说。对于所有编辑的工作,独立学者的接待并不讨人喜欢;官方历史解释说,一旦毛主席的大跃进将国家推向饥荒,他就“努力纠正”错误,这是一个荷兰学者称之为“赤裸裸的谎言”的判断。
第3卷尚未撰写,但历史学家应该为一个更加平坦的过程做准备。它将涵盖一个时期,不仅包括中国历史性的经济繁荣,还包括结束1989年天安门广场示威活动的血腥镇压,这一事件已成为官方历史上最彻底,最系统地压制的记忆之一。 。最初,天安门的问题并不是记录得太少。正如Louisa Lim在她的新书“人民共和国失忆症”中所写的那样,有太多目击者的说法,“世界各地的出版社都拒绝了他们,理由是市场饱和。”当时,一位持不同政见者的方丽芝他预测,大量的文件将迫使“忘记历史技术”失败,这对党的控制至关重要。
我不知道这是否可行,但我想从第3或第4段中抓一个短句。
我想象的规则就是这样:
- Split the article in two blocks and use the second one.
- Extract every sentence after "fullstop".
- Dump sentences too lenght.
- Print a random sentence.
太疯狂了吗?
我试图调整我在网络上找到的一些功能,但我总是失败! :(
有办法吗?
谢谢你, 抱歉我的英文不好!
答案 0 :(得分:0)
以"."
作为分隔符,分解整个段落。每个句子都作为结果数组中的数组元素。
然后只需使用array_rand ($array, $number)
函数,$ number等于1,因为你想要一个句子。您将获得随机index
。然后使用array[ extracted random index]
来获取句子。
答案 1 :(得分:0)
使用explode功能将文本拆分为其副本。
$blocks = explode ('\n\n' , $text );
你可能需要尝试使用一些可能\ n \ n是不正确的。
然后取出数组的第二项并再次拆分:
$frases = explode ('.', $blocks[1]);
然后从数组中取一个随机项
$result = array_rand ( $frases, 1 );