返回介绍

8.4 反后顾

发布于 2024-01-20 21:40:46 字数 940 浏览 0 评论 0 收藏 0

最后一种环视是反后顾。你能猜到它的工作原理吗?

反后顾会查看某个模式在从左至右的文本流的后面没有出现。同样,它有一个小于号(<),提醒后顾的是哪个方向。

请在RegExr中使用这个命令并查看结果:

(?1)(?<!ancyent) marinere

滚动到下方看看结果是什么。

然后用Perl语言尝试:

perl -ne 'print if (?i)(?<!ancyent) marinere' rime.txt

以下就是你会看到的结果,没有一个地方含有单词ancyent:

 The Marinere hath his will.
The bright-eyed Marinere.
The bright-eyed Marinere.
The Marineres gave it biscuit-worms,
Came to the Marinere's hollo!
Came to the Marinere's hollo!
The Marineres all 'gan work the ropes,
The Marineres all return'd to work
The Marineres all 'gan pull the ropes,
"When the Marinere's trance is abated."
He loves to talk with Marineres
The Marinere, whose eye is bright,

最后在ack中这样做:

ack -i '(?<!ancyent) marinere' rime.txt

以上就是对前瞻和后顾的简单介绍,这是现代正则表达式的一个重要特性。

在下一章中,你将会看到如何使用sed和Perl为文档添加HTML5标签的完整例子。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文