css - 从选择器中获取 id 的正则表达式?

标签 css regex

我正在尝试从选择器中提取元素的 ID。例如,如果我有以下选择器 body .foo #bar 我希望提取 #bar 文本。对于 #foo:hover,我希望提取 #foo。我创建了一个适用于所有情况的正则表达式,但包含 : 的选择器除外,因此它不适用于我的最后一个示例 #foo:hover。它似乎很贪婪并捕获所有文本 #foo:hover 而不仅仅是 #foo

有关我的问题的示例,请参见此处:https://regex101.com/r/7Rk6AL/2

你能建议我如何编辑我的正则表达式来实现我的目标,即只获取选择器 ID 而不是 :hover 部分吗?

最佳答案

ID 必须以字母开头,后面可以跟任意数量的字母、数字、连字符(“-”)、下划线(“_”)、冒号(“:”)和句点(“.”)

因为您不想要像::after 和 :hover 这样的东西,所以这也可以工作

#[a-zA-Z0-9|\-|_|\.]+

关于css - 从选择器中获取 id 的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59520167/

相关文章:

java - 如何检查该行与正则表达式(regex)不矛盾?

c# - 以下正则表达式在做什么 (?-mix :{0})

javascript - 我可以在 querySelectorAll 中使用正则表达式吗?

jquery - 在固定 div 内加载表单

css - 我怎样才能加入一个更小和更大的圆 Angular div?

css - 将文本 float 在图像上,右对齐

css - Bootstrap 无法正确加载响应式导航栏

python - 正则表达式 - 将单词匹配限制为以特定单词开头的行

php - 正则表达式模式提取引号

css - 更改工具栏中的按钮背景颜色