【问题标题】:How can a Content-Disposition filename be matched using a regex?如何使用正则表达式匹配 Content-Disposition 文件名?
【发布时间】:2016-04-01 08:14:10
【问题描述】:

如何使用正则表达式匹配 Content-Disposition 文件名? 我需要在反垃圾邮件软件中输入一个正则表达式,它应该与以下内容匹配

Content-Disposition: attachment;
 "filename"=attached.bat

attached 可以是任何文件名单词。

这也不应该匹配

Content-Disposition: attachment;
other text here
 "filename"=attached.bat

我会使用正则表达式匹配(并阻止)所有具有上述文本的电子邮件。 是否可以使用单个正则表达式行?

注意:我找到了一种匹配“Content-Disposition: attachment;”的方法OR "filename"=attached.bat" 使用 2 个单独的正则表达式,但我会匹配 "Content-Disposition: attachment;" AND "filename"=attached.bat" 使用单个正则表达式。可能吗 ?

谢谢

【问题讨论】:

  • 我试过这个 /(Content)(-)(Disposition)(:)( )(attachment)(;)+"[\s\S]*"+(")(filename)( ")(=)(attached)(\.)(bat)/g 但它现在可以工作 这是我的正则表达式1 /(Content)(-)(Disposition)(:)( )(attachment)(;)/g this是我的 regex2 /(")(filename)(")(=)(attached)(\.)(bat)/g
  • 对不起,如果没有指定,它是 perl
  • 请用您尝试过的这些正则表达式更新您的问题,解释什么不起作用,以及您希望它们如何工作。
  • 我更新了一个不应该匹配的例子,谢谢。

标签: regex perl email spam-prevention


【解决方案1】:

试试Content-Disposition: attachment;\s*"filename"=[-+.\w]+

http://www.regexr.com/3d4p4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-09
    • 2014-05-28
    • 1970-01-01
    • 2015-02-18
    • 1970-01-01
    相关资源
    最近更新 更多