[英]Exclude Parts of JavaScript Regex Match
我需要一個正則表達式來匹配<a title="Google search" href="http://google.com">Google</a>
中的"Google search"
。
這是regexr.com的鏈接。
我需要它只匹配<a>
標簽。 我在regex方面並不擅長,但是我確實知道使用JavaScript,后面的隱藏是不可能的。 我需要它以某種方式向后看,並檢查title=".+"
在 <a>
之后 。
這是我放在一起的一些正則表達式:
這個表達式有點用,但是它在<img>
選擇title=""
。 另外,當我只想要"Google search"
和"Microsoft home"
時,它會在<a>
選擇title=
。
/((title=".+")(?=\s*href))|(title=".+")/igm;
這些表達式會像我想要的那樣刪除title=
,但同時在末尾添加\\s
。
/(?!title=)".+"\s+/igm; AND /(?!title)".+"\s+\b/igm;
總之,鑒於上述HTML,我希望它僅匹配"Google search"
和"Microsoft home"
(我不希望它在<img/>
包含title=
也不匹配title="..."
)
編輯:
我正在使用的正則表達式僅匹配第一個<a>
標題:
/(?!<a\s+title\=)("[^"]+")(?=\s*href)/igm;
此正則表達式:
/<a[^>]+title=(["'])(Google search|Microsoft home)\1/ig
僅捕獲谷歌搜索或Microsoft的家在一個標簽。 匹配項包括標簽。 別擔心! 我們在第二個捕獲組中捕獲了“ Google搜索”。 您可以使用\\ 2或$ 2在javascript中訪問它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.