簡體   English   中英

排除JavaScript正則表達式匹配的部分

[英]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.

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