使用 Ruby 中的正则表达式验证电子邮件收件人的域名

丹尼斯

我想用正则表达式检查给定的收件人是否有正确的域,但无论我做什么我总是得到 false

代码:

from = "Pratha Burna <[email protected]>" # or just "<[email protected]>"
from.gsub!(/^\s*<\s*(.*)\s*>\s*$/, '\1')
from.downcase!
puts "checking for #{from}" # this should give only email. But whole from is here.

if from !~ /@mydomain.com$/
    puts "false"
else
    puts "true"
end

if from !~ /@another.com$/
    puts "false"
else
    puts "true"
end

示例应用程序:https : //ideone.com/arAkKm

我需要的检查,如果@mydomain.comfrom变量作为电子邮件。因为,用户可以@mydomain.com输入名称部分并欺骗服务器。我需要的是检查里面<>

例如,这应该失败

[email protected] <[email protected]>

因为@mydomain.com不在<>

如何正确清理和检查域?

阿列克谢·马蒂乌什金

使用String#[]与以下正则表达式:

'[email protected] <[email protected]>'[/(?<=\@)[^@]*?(?=>\z)/]
#⇒ "gmail.com"

正则表达式为:

/(?<=\@)[^@]*?(?=>\z)/

@和结束最后之间的任何内容,>不包含@.


您可以简单地将其与有效域列表或其他内容进行比较。它获取域并将其作为字符串返回。


另一种方法是获取一个电子邮件地址并检查它是否以您需要的结尾:

from[/(?<=<)[^<>]*?(?=>\z)/]
#⇒ "[email protected]"
from[/(?<=<)[^<>]*?(?=>\z)/].end_with?('@gmail.com')
#⇒ true

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用正则表达式验证Perl中的电子邮件

来自分类Dev

如何在C#中使用正则表达式拆分收件人名称和电子邮件地址?

来自分类Dev

Ruby on Rails - 正则表达式电子邮件验证不起作用

来自分类Dev

Ruby 上的电子邮件验证正则表达式问题

来自分类Dev

使用正则表达式进行电子邮件验证

来自分类Dev

使用正则表达式进行电子邮件验证的最大长度

来自分类Dev

使用正则表达式进行JavaScript电子邮件验证

来自分类Dev

如何使用正则表达式验证我的电子邮件地址?

来自分类Dev

使用正则表达式验证电子邮件,其中域部分中扩展名的数量可以变化

来自分类Dev

如何在不使用正则表达式的情况下在Python中验证电子邮件地址?

来自分类Dev

使用 JavaScript 中的当前正则表达式检测电子邮件中的 $

来自分类Dev

使用正则表达式隐藏垃圾邮件机器人的电子邮件地址

来自分类Dev

使用Java中的looklook的电子邮件正则表达式

来自分类Dev

使用正则表达式从电子邮件 HTML 中捕获某些内容

来自分类Dev

使用groovy在Jmeter中基于收件人电子邮件ID读取电子邮件

来自分类Dev

使用带有posix语法的正则表达式来验证电子邮件地址

来自分类Dev

正则表达式,用于验证全名,并在方括号中加上电子邮件(必须使用方括号)

来自分类Dev

正则表达式:电子邮件验证,仅允许在域的中间和顶级域中使用连字符

来自分类Dev

用于电子邮件验证的正则表达式不允许部分使用所有数字

来自分类Dev

用于电子邮件验证的正则表达式不允许部分使用所有数字

来自分类Dev

在Javascript中使用正则表达式验证带有文件夹的电子邮件地址

来自分类Dev

正则表达式:电子邮件验证,仅允许在域的中间和顶级域中使用连字符

来自分类Dev

不允许使用 jQuery 验证没有正则表达式的 Gmail、Yahoo 等电子邮件地址

来自分类Dev

使用 HTML5 必需属性和正则表达式模式进行电子邮件验证

来自分类Dev

C#MVC 4应用程序中的电子邮件地址验证:使用或不使用正则表达式

来自分类Dev

Ruby在选择块中使用正则表达式

来自分类Dev

如何使用正则表达式验证域名?

来自分类Dev

询问如何使用Emeditor提取电子邮件正则表达式?获取特定于电子邮件

来自分类Dev

使用 JavaScript 正则表达式匹配完整单词时,排除电子邮件或 URL 中匹配的单词

Related 相关文章

  1. 1

    使用正则表达式验证Perl中的电子邮件

  2. 2

    如何在C#中使用正则表达式拆分收件人名称和电子邮件地址?

  3. 3

    Ruby on Rails - 正则表达式电子邮件验证不起作用

  4. 4

    Ruby 上的电子邮件验证正则表达式问题

  5. 5

    使用正则表达式进行电子邮件验证

  6. 6

    使用正则表达式进行电子邮件验证的最大长度

  7. 7

    使用正则表达式进行JavaScript电子邮件验证

  8. 8

    如何使用正则表达式验证我的电子邮件地址?

  9. 9

    使用正则表达式验证电子邮件,其中域部分中扩展名的数量可以变化

  10. 10

    如何在不使用正则表达式的情况下在Python中验证电子邮件地址?

  11. 11

    使用 JavaScript 中的当前正则表达式检测电子邮件中的 $

  12. 12

    使用正则表达式隐藏垃圾邮件机器人的电子邮件地址

  13. 13

    使用Java中的looklook的电子邮件正则表达式

  14. 14

    使用正则表达式从电子邮件 HTML 中捕获某些内容

  15. 15

    使用groovy在Jmeter中基于收件人电子邮件ID读取电子邮件

  16. 16

    使用带有posix语法的正则表达式来验证电子邮件地址

  17. 17

    正则表达式,用于验证全名,并在方括号中加上电子邮件(必须使用方括号)

  18. 18

    正则表达式:电子邮件验证,仅允许在域的中间和顶级域中使用连字符

  19. 19

    用于电子邮件验证的正则表达式不允许部分使用所有数字

  20. 20

    用于电子邮件验证的正则表达式不允许部分使用所有数字

  21. 21

    在Javascript中使用正则表达式验证带有文件夹的电子邮件地址

  22. 22

    正则表达式:电子邮件验证,仅允许在域的中间和顶级域中使用连字符

  23. 23

    不允许使用 jQuery 验证没有正则表达式的 Gmail、Yahoo 等电子邮件地址

  24. 24

    使用 HTML5 必需属性和正则表达式模式进行电子邮件验证

  25. 25

    C#MVC 4应用程序中的电子邮件地址验证:使用或不使用正则表达式

  26. 26

    Ruby在选择块中使用正则表达式

  27. 27

    如何使用正则表达式验证域名?

  28. 28

    询问如何使用Emeditor提取电子邮件正则表达式?获取特定于电子邮件

  29. 29

    使用 JavaScript 正则表达式匹配完整单词时,排除电子邮件或 URL 中匹配的单词

热门标签

归档