我有这个HTML:
<div id="uglyHtml">
<br> <b>Lead</b>: <a href="#">John</a>
<br> <b>Boss</b>: <a href="#">Bernard</a>
<br> <b>Mascot</b>: Patrick
<br> <b>Designer</b>: Jeanette
<br> <b>Front</b>: <a href="#">Larry</a>
</div>
例如:
我们可以使用#uglyHtml > a
来简单地捕获约翰,伯纳德和拉里
负责人,老板,吉祥物,设计师:#uglyHtml > b
现在我需要捕获Patrick
和Jeanette
周围没有标签的标签,为此,我只能仅使用CSS或/和正则表达式
有办法吗?
答案 0 :(得分:1)
您可以使用此:
#uglyHtml:not(a), #uglyHtml:not(b) {
.....
}
答案 1 :(得分:1)
我绝不会使用正则表达式来匹配文本,但是看起来这正是您的工具想要的。这样的事情将匹配角色和人。这很容易破坏。
<div class="subject-pagination">
<div class="page-item" *ngFor="let subject of pageIdentityTraitArray.subjects"
[ngStyle]="subject.nid === subjectId ? {'background-color': pageIdentityTraitArray.color} :'' ">
<a [routerLink]="[ '/code-of-ethics/identity-trait', pageId, subject.nid, '1' ]"></a>
</div>
</div>
var html = document.querySelector("#uglyHtml").innerHTML
var re = /<b>([^<]+)<\/b>: (?:<a[^>]+>)?([^<\n]+)/g
let out = true
while (out) {
out = re.exec(html)
console.log(out)
}
答案 2 :(得分:0)