re = /(?i)(?=.*\b^From:\s*\b)(?=.*\bwilliam\b)(?=.*\brhodes\b).*/m
str = 'To: bill.rhodes@autozone.com
from: William rhodes
from: william.rhodes
From:willIAM.T.Rhodes
FROM: William C. Rhodes
from: WIlam Rhodes <william.rhodes@company.com)
from: Rhodes, WIlliam
from: rhodes.william@company.com
from: william.rhodes@company.com
From: "Rhodes, William" <william.rhodes@somecompany.com>
From: Rhodes, William <william.rhodes@somecompany.com>
From:
'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html