gpt4 book ai didi

c# - 这有正则表达式吗?

转载 作者:行者123 更新时间:2023-11-30 22:07:57 25 4
gpt4 key购买 nike

我在查找正则表达式时遇到问题。我有一些文本,可能被一些 xml 分割。例如:

<root>
<text>Thi</text>
<text>s is ju</text>
<text><bold>s</bold></text>
<text>t a tes</text>
<text><italic>t</italic></text>
</root>

我想在xml中搜索“just”这个词,需要结果

ju</text>
<text><bold>s</bold></text>
<text>t

有没有可能用正则表达式得到这个结果?

顺便说一句:我已经有了从 xml 中获取纯文本的正则表达式,它是(在 C# 语法中):

string plaintext = new Regex(@"\<[^\<]*\>").Replace(xmlstring, string.Empty);

这会找到每个“<”到“>”之间的所有内容 (*) 但不是另一个“<”并将其替换为 string.Empty。所以我得到了纯文本并可以搜索我的“just”,但结果只是“just”,而不是中间的 xml...

有人有想法吗?

最佳答案

最好不要在 xml 上使用正则表达式。只是不要。

根据您的任务,在您要查找的字符串的每个字符之后,您可以期望任何 xml 标记。所以基本上你需要在每个字母后插入 'maybetag' 正则表达式部分 - 像这样:

j(\<[^\<]*?\>\s*)*u(\<[^\<]*?\>\s*)*s(\<[^\<]*?\>\s*)*t(\<[^\<]*?\>\s*)*

工作样本 http://www.rexfiddle.net/WdkpliZ

关于c# - 这有正则表达式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22612146/

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