gpt4 book ai didi

regex - 使用正则表达式检索字符之间的字符串

转载 作者:太空宇宙 更新时间:2023-11-04 04:17:45 24 4
gpt4 key购买 nike

我想使用 grep 命令或只知道 regex 来获取“>”和“<”字符之间的以下字符串。

字符串:

<f id=mos-title>demo-break-1</f>

我想回来

demo-break-1

最佳答案

假设文件foo包含:

<f id=mos-title>demo-break-1</f>
<f id=mos-title>demo-break-2</f>
<f id=mos-title>demo-break-3</f>
<a>foo testing</a>

你可以这样做:

perl -ne 'print "$1\n" if /<.+id=mos-title>(.+?)<\/f>/' foo

请记住,这对于这些匹配仅发生在一行上来说是严格的。此外,您还必须考虑格式中的任何偏差,因为这不是有效的 HTML 解析器。

就严格而言,这是一种更宽松的方法,但仍然不是 100% HTML 兼容。

perl -ne 'print "$1\n" if /<.+id=mos-title\b.*?>\s*(.+?)\s*<\/f>/' foo

输出如下:

demo-break-1
demo-break-2
demo-break-3

关于regex - 使用正则表达式检索字符之间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15421118/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com