【问题标题】:Regex for EML Base64 blockEML Base64 块的正则表达式
【发布时间】:2021-06-21 15:30:50
【问题描述】:

是否可以使用正则表达式来匹配 整个 RFC1341 / RFC2045 Base64 块(每行最多 76 个字符),而不是只是单独的行?

我设法得到的最接近的是^(?:[a-zA-Z0-9+\/=-]{1,76}[\r|\n|\r\n]?)+,但它只能在 Notepad++ 中找到单独的行,并且它也选择 Base64 块以外的东西。

例子:

这可能吗?

【问题讨论】:

  • 试试这个正则表达式:^(?:[\w+/=-]{76}\R)+[\w+/=-]{1,76}
  • 哇,真快。谢谢!想要发布作为答案以便我接受?

标签: regex base64 eml


【解决方案1】:

您可以使用此正则表达式来获取所有 eml 块:

^(?:[\w+/=-]{76}\R)+[\w+/=-]{1,76}

RegEx Demo

正则表达式详细信息:

  • ^:线路开始
  • (?:: 启动非捕获组
    • [\w+/=-]{76}:匹配 [...] 中允许的 76 个字符
    • \R:匹配任何类型的换行符(unicode)
  • )+:结束非捕获组。匹配该组中的 1 个或多个。
  • [\w+/=-]{1,76}:匹配 [...] 中允许的 1 到 76 个字符

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-10
    • 2022-11-21
    • 1970-01-01
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-02
    相关资源
    最近更新 更多