regex - Notepad++ 仅返回 XML 标记中的内容
问题描述
我有大量具有非常特定标签的 XML 文档。我正在寻找删除标记中的所有内容 [EXCEPT] 名为:
<DisplayContents>
<ID>8</ID>
<Type>102</Type>
<Contents>A whole bunch of stuff in this tag</Contents>
</DisplayContents>
在这个例子中,我只想在这个标签中看到文本A lot of stuff in this tag
我试过使用:
<(Contents).*?>|</.(Contents)>
作为正则表达式并标记行...然后删除未标记的。但这似乎消除了一切:(所以-我做错了什么,很可能是因为我不是正则表达式大师。
**编辑:内容中的内容很长,并且跨越多行并带有换行符,以防万一这件事发生了。**
解决方案
我的猜测是您希望删除所有内容,除了,
A whole bunch of stuff in this tag
这可能是一个类似于的表达式,
<DisplayContents>[\s\S]*?<Contents>(.*?)<\/Contents>[\s\S]*?<\/DisplayContents>
被替换为$1
可能有效。
演示
推荐阅读
- java - javax.net.ssl.SSLHandshakeException:即使在添加证书之后
- javascript - 从函数中将猫鼬文档作为对象返回
- java - Java/Stream 帮助:将嵌套的地图列表转换为仅使用流的地图
- java - mac m1 无法写入核心转储。核心转储已被禁用。要启用核心转储,请在再次启动 Java 之前尝试“ulimit -c unlimited”
- vba - 在 Word 文档中查找字符串的出现 - 如果在表格中找到字符串,则会出现问题
- networking - 仅在发生故障时如何在k8s中重定向tcp流量
- python - 为每个人锁定频道 discord.py
- unity3d - Blenderexport FBX 到 Unity 的问题
- python - 从目录中读取 id
- reactjs - 上传从html转换为s3的图像文件