Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

求解,用两个条件代码,但下载过滤器不完全生效 #114

Open
kkzhh opened this issue Oct 11, 2024 · 1 comment
Open

求解,用两个条件代码,但下载过滤器不完全生效 #114

kkzhh opened this issue Oct 11, 2024 · 1 comment

Comments

@kkzhh
Copy link

kkzhh commented Oct 11, 2024

这是我的过滤器代码
(illust.id > 123456789) && illust.tags.every(t=>t.name!="vindictus") //根据作品ID过滤 和 根据作品标签过滤,

我想要根据 ID 和 作品标签,来过滤掉比较新的作品,但结果似乎只有 标签过滤条件 生效,ID过滤不生效,求解?

我不是很懂代码,求大佬解答?

@Mapaler
Copy link
Owner

Mapaler commented Oct 11, 2024

如果你是说符合这两个条件的都不下载,那么应该用 OR 而不是 AND,AND 表示必须同时符合这两个条件的才不下载

illust.id > 123456789 || illust.tags.every(t=>t.name!="vindictus")

下载当前作品功能可以在控制台显示当前作品的数据内容,最好看一看实际的标签名是什么,很多是日文的。
firefox_#POP_インク先生_-POP的插画-pixiv—_Mozilla_Firefox_0662
如果确实是英文,为了避免大小写问题,最好也用带i参数的正则表达式来测试。
你希望下载"vindictus"标签,所以需要排除每一个标签都不是"vindictus"。其实相当于任意一个标签是"vindictus"的取反,所以写成 some 取反更好理解?

illust.id > 123456789 || !illust.tags.some(t=>/vindictus/i.test(t.name))

如果你希望过滤器只筛选你需要的,可以对代码整体取反。比如如下代码表示对 id < 123456789 ,并且同时有“vindictus”标签的 作品取反,就变成你不要的了。

!( illust.id < 123456789 && illust.tags.some(t=>/vindictus/i.test(t.name) )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants