我正在尝试为此创建一个正则表达式:
.domain.com $对象子请求,第三方,域= domain.com | domain2.com | domain3.com | domain4.com
最好的结果是将它匹配到这样的结果中:
- object-subrequest
- third-party
- domain
-- domain.com
-- domain2.com
-- domain3.com
-- domain4.com
但我不知道这是否可能。像这样的结果也可以:
- object-subrequest
- third-party
- domain
然后另一个正则表达式来过滤掉所有这样的域名:
-- domain.com
-- domain2.com
-- domain3.com
-- domain4.com
到目前为止,我只能提出这个问题: https://regex101.com/r/wP8cY7/1
/(script|image|stylesheet|object|xmlhttprequest|subdocument|document|elemhide|other|third-party|domain|sitekey|match-case|collapse|donottrack),*/g
正如您所看到的,这匹配包含其中一个单词的所有内容,我只需要$
之后的所有内容。
我只使用Javascript(没有jQuery)。
答案 0 :(得分:1)
如果你能以某种其他方式摆脱$
之前的所有事情,这个正则表达式接近我想的那样:
/[$,](script|image|stylesheet|object|xmlhttprequest|subdocument|document|elemhide|other|third-party|domain|sitekey|match-case|collapse|donottrack)/gi
答案 1 :(得分:0)
将输入x
拆分为美元符号和逗号;获取第一个组件的所有组件,第一个组件的第一个组件除外。然后通过相等或符号分开:
s <- strsplit(x, "[$,]")[[1]][-1]
strsplit(s, "[=|]")
,并提供:
[[1]]
[1] "object-subrequest"
[[2]]
[1] "third-party"
[[3]]
[1] "domain" "domain.com" "domain2.com" "domain3.com" "domain4.com"
注意:我们将其用作输入x
:
x <- ".domain.com$object-subrequest,third-party,domain=domain.com|domain2.com|domain3.com|domain4.com"