如何删除 vi 中与正则表达式匹配的行?
我有一个大文本文件,其中包含我试图删除的以下标题。例如:
1 Nephi 2:13
13 Neither did they believe that Jerusalem, that great city,
could be destroyed according to the words of the prophets. And
they were like unto the Jews who were at Jerusalem, who sought to
take away the life of my father.
1 Nephi 2:14
14 And it came to pass that my father did speak unto them in the
valley of Lemuel, with power, being filled with the Spirit, until
their frames did shake before him. And he did confound them,
that they durst not utter against him; wherefore, they did as he
commanded them.
1 Nephi 2:15
15 And my father dwelt in a tent.
1 Nephi 2:16
我正在尝试删除包含“1 Nephi 2:16”的整行,因此我正在 vi 中寻找与包含书籍和经文参考的整行匹配的正则表达式。
以下是需要匹配的示例书籍和诗句组合的列表
1 Nephi 2:16
Mormon 3:7
Alma 32:27
Words of Mormon 1:3
I have a large text file that has the following headings that I'm trying to delete out. For example:
1 Nephi 2:13
13 Neither did they believe that Jerusalem, that great city,
could be destroyed according to the words of the prophets. And
they were like unto the Jews who were at Jerusalem, who sought to
take away the life of my father.
1 Nephi 2:14
14 And it came to pass that my father did speak unto them in the
valley of Lemuel, with power, being filled with the Spirit, until
their frames did shake before him. And he did confound them,
that they durst not utter against him; wherefore, they did as he
commanded them.
1 Nephi 2:15
15 And my father dwelt in a tent.
1 Nephi 2:16
I'm trying to delete the entire line containing the "1 Nephi 2:16", so I'm looking for a regular expression in vi that would match entire line containing book and verse reference.
Below is a list of example book and verse combinations it needs to match
1 Nephi 2:16
Mormon 3:7
Alma 32:27
Words of Mormon 1:3
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
重复混沌的答案:如果您可以确定以冒号分隔的两个数字结尾的行的任何事件都将是标题:
riffing on chaos's answer: if you can be sure that any incidence of a line ending with two numbers separated by a colon will be a header:
这些命令的意思是“全局(g)匹配此正则表达式(/.../)并删除(d)它出现的每一行” 。
Those commands mean "globally (g) match this regex (/.../) and delete (d) each line where it occurred".