[英]Regex Pattern matching with HTML tag's
這只適用於我正在搞亂的小型Android程序,所以我只需要匹配一個或兩個標簽
我有一個HTML標簽,我可以在該標簽內找到什么是“FC-Cologne”我使用此代碼來獲取它
Pattern pattern = Pattern.compile("report\\">(.*?)</a>",Pattern.MULTILINE);
這是我可以開始工作的HTML標簽
<a href =“/ match-menu / 3405570 / first-team / fc-cologne = report”>科隆足球俱樂部</ a>
但我不能得到這個標簽,我不知道是因為“反對”一詞之后的空格或/和HTML標簽內的引號,因為它們不在第一個標簽中
這是我無法開展的工作
<td class =“bold opposition”>“Olympiacos”</ td>
這是我正在嘗試的代碼
Pattern pattern = Pattern.compile("opposition \">(.*?)</td>",Pattern.MULTILINE);
我已經嘗試用“”替換空格“”並且我已經嘗試了空間但是我什么都沒得到。
如果有人能幫助我,我將不勝感激。
除非你在其中一個中有一個拼寫錯誤 - < /td>
在<
和你的正則表達式</td>
之后有一個空格。
在<
導致匹配在RegexBuddy中成功后,在正則表達式中添加空格
更新:似乎空間不在OP正在使用的標簽中。
在RegexBuddy我有模式(復制為Java字符串)
"opposition \">(.*?)</td>"
哪個匹配html
< td class="bold opposition "> "Olympiacos" </td>
給一場比賽
opposition "> "Olympiacos" </td>
和第1組
"Olympiacos" <--Line ends there.
我相信這就是你要找的東西。
<(\\w+)\\s*(?:\\w+(?:=(?:'(?:[^']|(?<=\\\\)')*'|"(?:[^"]|(?<=\\\\)")*"))?\\s*)*>(.*?)</\\1\\s*>
您將需要使用第二個組來獲取標記的內容(第一個組是標記名稱)。 請注意,這不會遞歸地工作。 嵌套元素在第二組中捕獲,因此您需要在其匹配的第二組上使用此正則表達式,直到沒有匹配為止是有意義的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.