簡體   English   中英

PHP Regex匹配多行字符串中的多次出現

[英]PHP Regex Match Multiple Occurrences in Multiple Lines String

我有以下多行CSS樣式:

.style-1 {
    border-color: #2980B9;
}

.style-2 {
    background-color: #2980B9;
    #FFF;
}

.style-3 input[type=submit] {
    background-color: #2980B9;
    color: #FFF;
}

這是我的正則表達式模式: \\..*\\{\\s?\\s?+.*\\s?\\}\\s?\\s?+

https://regex101.com/r/tP7qE7/1

我想匹配從選擇器到結束括號的每個規則,因此我可以在每個規則之前添加新的選擇器並分別回顯每個規則。 現在,使用上面的正則表達式模式,我只能得到第一個規則。 我嘗試了preg_match()preg_match_all()沒有成功。 如何使用正則表達式匹配每個規則?

先感謝您!

您可以將以下正則表達式( \\..*?\\{.*?\\} )與gs修飾符一起使用:

/\..*?\{.*?\}/gs

演示

\..*?\{\s?\s?+[\s\S]*?\s?\}\s?\s?+

您可以使用它。請參閱演示。

https://regex101.com/r/tP7qE7/3

您可以嘗試此模式以匹配選擇器

(?s)^\..*?\{.*?\}$

暫無
暫無

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

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