簡體   English   中英

在文本或字符串中查找 xml

[英]Find xml in the text or string

如何在字符串或文本中找到 xml 片段? 不管使用什么編程語言,最好是 C#。 它可能是非標准的 xml 文本,字符串/文本可能是這樣的:

checkLicense: A Boolean attribute that specifies that a WOPI server SHOULD enforce license restrictions for file types within the ct_app-name block. 


<xs:complexType name="ct_app-name">    
    <xs:sequence> 
        <xs:element name="action" minOccurs="1" maxOccurs="unbounded" type="ct_wopi-action"/>
        </xs:sequence>
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="favIconUrl" type="xs:string" use="optional"/>
        <xs:attribute name="checkLicense" type="xs:boolean" use="optional" default="false"/> 
</xs:complexType>


The ct_wopi-action complex type specifies an action (such as viewing a file) that a WOPI client can perform. 

這個問題有點含糊(而且有點移動的目標)

但是,如果您想要<>之間的所有內容,您可以使用帶有一些貪婪的regex

@"\<.*\>"

例子

var pattern = @"\<.*\>";
var xml = @"blah blah blah
            dsfsdf,<d [j>ohn]
            ZXZx<John >Johnson
            sdfdsfdsf";
var match = Regex.Match(xml , pattern, RegexOptions.Multiline | RegexOptions.Singleline;

if (match.Success)
{
   Console.WriteLine(match.Groups[0]);
}

但是,如果您想匹配更具體的標簽,您可以使用這樣的模式

@"\<xs:complexType.*\</xs:complexType>"

在這兩種情況下match.Groups[0]將返回您的xml ,而match.Success確定您是否有任何

你可以在這里測試

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM