仍未解决 :( [2 月 11 日]
我有一个充满随机数据的大型文本文件,想从中提取所有电子邮件地址。
我想在 Ruby 中使用如下伪代码来实现:
monster_data_string = "asfsfsdfsdfsf sfda **joe@example.com** sdfdsf"
monster_data_string.match(EMAIL_REGEX)
有谁知道我会使用什么 Ruby 电子邮件正则表达式来完成此操作?
请记住,我正在寻找 Ruby 的答案。我已经尝试过通过谷歌搜索找到的大量正则表达式,但其中大多数会导致 Ruby 运行时错误,指出“+”和“”等字符无效/无法识别。*
我已经尝试过的是:
monster_data_string.match(/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i)
但我收到 Ruby 错误,指出“+”是无效字符
提前致谢
最佳答案
看这个...
f = File.open("content.txt")
content = f.read
r = Regexp.new(/\b[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}\b/)
emails = content.scan(r).uniq
puts YAML.dump(emails)
关于ruby - 在大数据流中查找电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/535644/