簡體   English   中英

C# 中的正則表達式:在特殊字符 + 特定文本 + 直到特殊字符之后匹配

[英]Regular Expression in C# : Matching after a special character + specific text + till special character

我正在尋找一個匹配特殊字符}之后的所有內容的模式,然后匹配一個文本,然后直到第一個特殊字符。

這將通過 example.my 字符串很清楚

string a = @"}var e=l.visible}.abc.jYOxx{margin-top:0px}.acOxx{margin-top:0px}";

我想提取最后一個}之后的所有內容,文本匹配是“.jYOxx”,然后是第一個}之前的所有內容。

我想要的正則表達式的結果將是:

.abc.jYOxx{margin-top:0px}

我寫了這個:

MatchCollection matchesSource = Regex.Matches(a, @"\}(.*?).jYOxx(.*?)}", RegexOptions.Multiline);

我的結果是:

}var e=l.visible}.abc.jYOxx{margin-top:0px}

從邏輯上講,我有一串css類,並且我有 class 名稱來匹配我想僅提取ZC7A62 8CBA22E28EB17B5F5C6AE2A266AZ ZA2F2ED4F8EBC2CBBDZC21 的名稱。 請幫助我浪費了一整天的時間。

在匹配.jYOxx之前,您可以匹配除大括號外的任何字符

如果您也不想匹配 whitspace 字符,您可以將\s添加到否定字符 class [^{}\s]

[^{}]*\.jYOxx{[^{}]*}

正則表達式演示

暫無
暫無

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

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