Regex 删除XAML字符串中的多个内容
嗨,我有一个xaml字符串,如下所示:Regex 删除XAML字符串中的多个内容,regex,windows-8,richtextblock,Regex,Windows 8,Richtextblock,嗨,我有一个xaml字符串,如下所示: <InlineUIContainer> <HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri"> <Span> <InlineUIContainer> <HyperlinkButton Style="{StaticResource Link}" NavigateUri="someur
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">
<Span>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">SOME TEXT</HyperlinkButton>
</InlineUIContainer>
</Span>
some undesirable text!
</HyperlinkButton>
</InlineUIContainer>
一些文本
一些不受欢迎的文字!
我需要将这个xaml转换为RichTextBlock内容,但我无法控制字符串的生成,我只接收字符串,因此正如您在片段中看到的,我需要删除不需要的文本,因为HyperLinkButton不能有两个内容
所以我需要两件事中的一件:
谢谢 虽然可能不是最好的解决方案,但正则表达式很容易被许多边缘情况绊倒。此表达式将查找不需要的文本并替换它 正则表达式:
([\s\r\n]*)(^.*[\r\n]*)(?=\s*[\s\r\n]*)
替换为:$1
实例
现场工作示例:
示例文本
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">
<Span>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">SOME TEXT</HyperlinkButton>
</InlineUIContainer>
</Span>
some undesirable text!
with multiple
lines
</HyperlinkButton>
</InlineUIContainer>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">
<Span>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">SOME TEXT</HyperlinkButton>
</InlineUIContainer>
</Span>
</HyperlinkButton>
</InlineUIContainer>
一些文本
一些不受欢迎的文字!
多次
线
更换后
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">
<Span>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">SOME TEXT</HyperlinkButton>
</InlineUIContainer>
</Span>
some undesirable text!
with multiple
lines
</HyperlinkButton>
</InlineUIContainer>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">
<Span>
<InlineUIContainer>
<HyperlinkButton Style="{StaticResource Link}" NavigateUri="someuri">SOME TEXT</HyperlinkButton>
</InlineUIContainer>
</Span>
</HyperlinkButton>
</InlineUIContainer>
一些文本
您好,谢谢,但它似乎没有删除它:(而且\s不是一个有效的转义序列:(因为这是在Windows平台上,所以您使用的是.net正则表达式引擎吗?您是否使用触发
的s
选项来匹配新行字符?