gpt4 book ai didi

xml - Grep 特定模式的 XML 文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:39:47 31 4
gpt4 key购买 nike

我有一个包含数万个相同元素的大型 XML 文件:

<rootElem>
<fizz buzz="true">234</fizz>
<fizz buzz="false">384</fizz>
<fizz buzz="true"></fizz>
<fizz buzz="true">39494</fizz>
<fizz/>
</rootElem>

我想运行一个 grep打印出任何 <fizz>不包含文本/正文数据(开始和结束标签之间的数字)的元素。在上面的示例中,grep将为第 3 行和第 5 行生成 2 行 <fizz>不包含数字数据的元素。文件名为 fizzes_20.xml .我尝试运行以下但无济于事:

  • grep fizzes_20.xml "></>"
  • grep fizzes_20.xml "/>"

有什么想法吗?提前致谢!

最佳答案

xmllint命令可以用来实现空节点的xpath表达式测试:

$ xmllint --xpath "//fizz[not(text())]" data.xml 
<fizz buzz="true"/><fizz/>

更新

$ xmllint --version
xmllint: using libxml version 20901
compiled with: Threads Tree Output Push Reader Patterns Writer SAXv1 FTP HTTP DTDValid HTML Legacy C14N Catalog XPath XPointer XInclude Iconv ISO8859X Unicode Regexps Automata Expr Schemas Schematron Modules Debug Zlib Lzma

关于xml - Grep 特定模式的 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15537898/

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