具有多个 OR 参数的 imap 搜索语法

2023-12-29

我正在使用 Ruby 2.5.3 和邮件 gem (2.7.1)。我正在构造 IMAP 搜索命令来检索给定电子邮件地址列表和各种自日期的电子邮件。它是搜索电子邮件地址的逻辑或。

我正在使用这个 email_filter:

(OR (FROM [email protected] /cdn-cgi/l/email-protection SINCE 1-Oct-2018) (OR (FROM [email protected] /cdn-cgi/l/email-protection SINCE 10-Oct-2018) (OR (FROM [email protected] /cdn-cgi/l/email-protection SINCE 19-Oct-2018))))

这似乎与 RFC 3501 ABNR 形式一致。

ruby 代码:构建搜索:

search_options = { count: no_emails_to_process, what: :first, order: :asc, keys: email_filter}
Mail.find(search_options) do |mail, imap, uid, attrs| 
  etc ...

它引发了一个错误:

Error in IMAP command UID SEARCH: Missing argument

我认为语法不正确,因为将搜索限制为一个电子邮件地址效果很好。

我需要一些帮助。


OR 接受两个参数,不多也不少。OR a b works, (OR a b)有效但是(OR a)行不通的。这将是单参数 AND 内的单参数 OR。当解析器遇到 OR 的第二个参数时,它会寻找)结束 AND 的参数列表。您查询的最后一部分是(OR (FROM [email protected] /cdn-cgi/l/email-protection SINCE 19-Oct-2018)).

你的意思大概是OR (FROM [email protected] /cdn-cgi/l/email-protection SINCE 1-Oct-2018) OR (FROM [email protected] /cdn-cgi/l/email-protection SINCE 10-Oct-2018) (FROM [email protected] /cdn-cgi/l/email-protection SINCE 19-Oct-2018)。在该表达式中,第一个 OR 接受两个参数,一个 AND 和另一个 OR,第二个 OR 接受两个参数,两个参数都是 AND。

(我同意 OR 和 AND 之间的区别有点奇怪。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

具有多个 OR 参数的 imap 搜索语法 的相关文章

  • Rails 3 - “无法解析 Yaml”

    我不知道我做错了什么 我尝试运行 rails c 但它只是给了我一个错误 10 分钟前它还在工作 C Ruby192 lib ruby 1 9 1 psych rb 148 in parse couldn t parse YAML at l
  • ruby 的 String .hash 方法如何工作?

    我只是红宝石的新手 我见过一个字符串方法 String hash 例如 在irb 我试过了 gt gt mgpyone hash returns gt 144611910 这个方法是如何工作的 The hash方法是为所有对象定义的 看文档
  • Ruby 可选参数和多个参数

    我试图将方法的第一个参数设置为可选 后跟任意数量的参数 例如 def dothis value 0 args 我遇到的问题是 这似乎实际上不可能 当我打电话时dothis hey how are you good 我希望它将值设置为默认值
  • 有没有可以在 HTML 文档之间进行比较的 ruby​​ gem?

    事实证明 对两个不同的 html 文档进行比较是一个完全不同的问题 而不仅仅是对纯文本进行比较 例如 如果我在以下之间进行简单的 LCS 差异 Google and Google diff 结果不是 but a gt github com
  • 回形针不支持 .doc 文件

    在 Rails 4 0 2 中 我使用回形针 gem 上传文件 但它不支持 doc 文件 在文件上传字段下方 显示一条错误消息 扩展名与其内容不匹配 在模型中 检查内容类型的验证如下 validates attachment content
  • class_eval、class_exec、module_eval 和 module_exec 之间有什么区别?

    我正在读Module文档 但似乎无法理解它们的差异以及应该在哪里使用 怎么样eval不同于exec 我将回答比你的问题更多的内容 包括instance eval exec 在你的问题中 所有变体 instance module class
  • 是否可以用 PHP 编写电子邮件解析器? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 升级到 Rails 6 时是否有一种编程方法可以检测 Zeitwerk::NameError?

    我目前正在将旧的 Rails 应用程序迁移到 Rails 6 好像项目中有些文件和里面定义的类不一致 运行应用程序测试时我没有看到此错误 但部署后我收到如下错误 Zeitwerk NameError expected file app my
  • 需要野科切吗?没有要加载的文件

    我正在尝试开始使用 Nokogiri 我运行了命令 gem install nokogiri 作为 Windows 7 64 位 中的管理员 控制台显示 已成功安装 和 已安装 1 个 gem 当我输入时 gem list local OR
  • PHP 电子邮件表单每次刷新页面时都会发送电子邮件

    我的 php 电子邮件每次刷新页面时都会发送电子邮件 例如 用户正在填写表单并使用发送按钮发送 这一切都很好 但如果他们刷新页面 它会再次发送包含所有相同表单信息的电子邮件 我相信这是问题代码 但不知道它是什么 require once c
  • 从 Jekyll 插件向页面添加属性

    假设我想要一个包含如下内容的页面 h1 page comment count Comment s h1 for c in page comment list div strong c title strong br c content di
  • Chef - 使用动态变量创建模板?

    我在厨师食谱上遇到了一些挑战 我是厨师新手 所以请耐心等待 第 1 步 我的厨师食谱安装 Ruby Passenger 然后与 Nginx 一起编译 Passenger nginx 模块 Install passenger and ngin
  • ruby 管道、IO 和 stderr 重定向

    我希望有一个 ruby 程序 一个 rake 任务 观察另一个 rake 任务的输出 输出写入器输出到 stderr 我想读一下这些行 我很难设置它 如果我有一个作家 stdout writer rb 不断打印一些东西 usr bin en
  • 使用脚本从网站中提取电子邮件地址

    给定一个网站 我想知道以编程方式和 或使用脚本的最佳程序是什么 以纯文本形式提取每个页面上存在的所有电子邮件地址 电子邮件受保护 cdn cgi l email protection从该链接和下面的所有站点 递归或直到某个固定深度 使用 s
  • 从 float 转换的 Ruby Time 对象不等于原始 Time 对象

    time Time now fvalue time to f return time Time at fvalue 有人可以解释为什么上面的表达式返回 false 吗 如何从 float 创建一个与原始时间变量匹配的新 Time 对象 Th
  • 有没有办法避免自动更新 Rails 时间戳字段?

    如果您有数据库列created at and updated at当您创建和更新模型对象时 Rails 将自动设置这些值 有没有办法在不接触这些列的情况下保存模型 我正在引入一些旧数据 我想根据 不同名称的 旧数据字段中的相应值设置这些值
  • Capistrano:deploy.rb 文件重构

    我的deploy rb中有以下代码 namespace app do desc copies the configuration frile from shared config yml to config task copy config
  • 通过 SO_RCVTIMEO 套接字选项在 Ruby 中设置套接字超时

    我试图通过 SO RCVTIMEO 套接字选项在 Ruby 中设置套接字超时 但它似乎对任何最近的 nix 操作系统都没有影响 使用 Ruby 的 Timeout 模块不是一个选择 因为它需要为每个超时生成和连接线程 这可能会变得昂贵 在需
  • 未知属性:user_id

    我在执行 current user stories build 期间收到错误未知属性 user id class User lt ActiveRecord Base has many stories class name Story for
  • Nodemailer:从未收到问候语

    当尝试使用 Nodemailer 在 Node 内发送电子邮件时 https github com nodemailer nodemailer https github com nodemailer nodemailer 调用sendMai

随机推荐

  • Rails 4:SQLException:没有这样的表:

    我在 Rails4 中运行以下命令 bundle exec rake db migrate 201405270646 AddAttachmentImageToPins 迁移 change table pins 耙子中止 StandardEr
  • 通过扬声器的 AVAudioPlayer

    我得到以下代码 id init if self super init UInt32 sessionCategory kAudioSessionCategory MediaPlayback AudioSessionSetProperty kA
  • 选中复选框时动态更改引导程序进度条值

    我正在尝试制作一个带有引导进度条的动态清单 这是我的标记代码 div class progress progress striped active div class progress bar div div div class row t
  • 如何在TF2.0中创建具有自定义渐变的keras层?

    由于在 TensorFlow 2 0 中 他们计划统一 keras 下的所有高级 API 我不太熟悉 并完全删除会话 我想知道 如何创建具有自定义渐变的自定义 keras 层 我见过 相当有限 guide https keras io la
  • UISearchBar 横向宽度错误

    当您以横向模式启动时 我的搜索栏稍微向右拉伸得太远 如果您随后旋转到纵向模式 它仍然有点太宽 但是 如果您以纵向模式开始 然后将其旋转为横向模式 也可以 这是我的代码 sBar UISearchBar alloc initWithFrame
  • 如何使用 php 生成带有肥皂信封和正文标记的 XML

    我无法使用 Soap Envelope 和 Body Tag 生成 XMl 这是代码 rootElement XMLDoc gt createElement AddDetails rootNode XMLDoc gt appendChild
  • 如何对使用 Popen 的函数进行单元测试?

    我正在编写一个包含大量文件操作的程序 一些操作是通过调用来完成的subprocess Popen eg split l 50000 filename gzip d f filename filename 现在我想对程序的功能进行单元测试 但
  • 递归函数的产量

    我正在尝试对给定路径下的所有文件执行某些操作 我不想事先收集所有文件名然后对它们执行某些操作 所以我尝试了以下方法 import os import stat def explore p s list os listdir p for a
  • 如何进行MultiLabel分层抽样?

    我正在处理多标签数据 我想使用分层采样 假设我有 10 个类 我们将它们称为 ABCDEFGHIJ 我有一个包含 10 列的数据框 对应于每个标签 其中包含有关条目的其余信息 我可以在 n entry 10 矩阵中提取这 10 列 我将其称
  • 如何设置不同的列表选择器

    mainListView setOnItemClickListener new AdapterView OnItemClickListener Override public void onItemClick AdapterView
  • 通过 winreg 查找 perfmon 计数器 id

    我有一个通过 winreg h 中公开的 API 收集 Perfmon 计数器值的应用程序 为了收集 Perfmon 计数器值 我必须调用RegQueryValueExW传递我感兴趣的 Perfmon 计数器的 id 为了获取该 ID 我需
  • 实体属性值 (EAV) 的替代方案?

    我们的数据库是基于EAV 实体 属性 值 模型设计的 那些使用过 EAV 模型的人都知道为了灵活性而带来的所有废话 我问我的客户为什么使用EAV模型 灵活性 他们的回答是 他们的实体随着时间的推移而改变 因此 今天他们可能有一个包含一些属性
  • 在javascript中设置CSS渐变?

    所以我一直在尝试用javascript设置渐变 以便它具有鼠标悬停效果 但我没有运气 无法让它工作 这是我的javascript function mouseOVER x x backgroundImage webkit gradient
  • 将两个具有许多稀疏列的 Pandas DataFrame 合并会产生一个需要不成比例的大量内存的 DataFrame

    当合并两个稀疏数据帧时 生成的数据帧在内存中变得不成比例的大 我想知道为什么会这样 新数据帧上的操作非常慢 我尝试了不同的方法来减少内存占用 但没有成功 例如 使用不同的 fill values 0 或 0 0 在密集列和稀疏列之间来回转换
  • 如何将数据库备份文件 (.bak) 从 SQL Server 2012 还原到 SQL Server 2008 Express?

    最初来自 SQL Server 2008 的数据库已恢复到 SQL Server 2012 已制作 SQL Server 2012 的备份 我正在尝试在本地 SQL Server 2008 Express 上恢复它 但是我收到错误 指定的转
  • 视频和音频帧的PTS和DTS计算

    我正在从两个不同的线程接收视频 H264 编码数据和音频 G 711 PCM 编码数据以进行复用 写入mov多媒体容器 writer 函数签名如下 bool WriteAudio const unsigned char pEncodedDa
  • 用于计算设置表宽度的可变列宽度的算法

    我需要找出一种算法来计算列宽的优化大小 给出以下内容 表格的宽度固定为页面的大小 列内的数据将是可变的 因此列的宽度是可变的 必须优化宽度以了解何时换行以及何时不换行 因此给出以下数据 From gt 03 06 2014 To gt 03
  • 带有 Eclipse Indigo 的 gwt-maven-plugin

    我只想在 Eclipse 中设置一个新的 GWT 项目并使用 Maven 来处理所有的 jar 丛林 我使用了 gwt maven pluginthis http mojo codehaus org gwt maven plugin use
  • Python 单元测试应该位于单独的模块中吗?

    对于放置 Python 单元测试的最佳位置是否存在共识 单元测试是否应该包含在与正在测试的功能相同的模块中 当模块单独运行时执行 if name main 等 还是包含不同模块的单元测试更好 也许两种方法的组合是最好的 包括每个模块内的模块
  • 具有多个 OR 参数的 imap 搜索语法

    我正在使用 Ruby 2 5 3 和邮件 gem 2 7 1 我正在构造 IMAP 搜索命令来检索给定电子邮件地址列表和各种自日期的电子邮件 它是搜索电子邮件地址的逻辑或 我正在使用这个 email filter OR FROM email