簡體   English   中英

我該如何寫一個正則表達式來匹配首尾之間的所有內容?

[英]How can I write a regular expression that matches everything between the first and the last quote?

我嘗試匹配引號之間的多個值(這些值可以是空格,但不能是其他任何值),我能達到的最佳效果是匹配第一個和最后一個引號之間的所有內容

我已經檢查了很多SO答案,但無法使其正常工作

這是正則表達式

\[\[\[(\w*img\w*)\s(\w*id|url\w*)+="([^"]|.*)"\]\]\]

這是我嘗試匹配的字符串(值是數字,但是我可以有url或類似的東西)

[[[img id="37" w="100" h="70"]]]

我應該獲得所有參數及其對應的值,但是我只能得到一個參數,其值是beeing 37“ w =” 100“ h =” 70

我知道我很近,但是這個很棘手

問候

在此處輸入圖片說明

我認為您不需要所有\\w 我也建議按照評論中的建議將任務分為兩部分。

但是,我也看到了一個選擇,只需一步即可

\[\[\[img(?:\s(\w+)="([^"]+)")?(?:\s(\w+)="([^"]+)")?(?:\s(\w+)="([^"]+)")?\]\]\]

這基本上是包裝器[[[]]] ,是正常字符部分img ,然后是(?:\\s(\\w+)="([^"]+)")?重復出現的次數與您期望的屬性一樣。 (\\w+)匹配屬性的名稱和([^"]+)的值。

暫無
暫無

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

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