1

我有一个文本区域,用户可以在其中输入一些电子邮件地址(强制)和姓名(可选)。考虑到它可能包含错误,我将如何拆分字符串以获取电子邮件地址和姓名的数组(或哈希)?到目前为止,如果不允许使用名称,我可以将其拆分为一个数组:

emails = @request_feedback.emails.split("\r\n")
emails.each {|email|
  if (email =~ /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i)
    FeedbackMailer.get_feedback(current_user, email, employee_id).deliver
  end
}
4

1 回答 1

0

您需要使用括号在正则表达式中使用组

emails.each {|email|
    if (email =~ /\A([\w+\-.]+)@([a-z\d\-.]+)\.[a-z]+\z/i)
       FeedbackMailer.get_feedback($1, email, $2).deliver
    end
}
于 2013-03-05T13:51:29.737 回答