re = /test(?!.*<\/a)/m
str = 'mmmmm mmmmmmm mmmmmmm mmmmmm mmmmmmm mmmmm mmmmm mmmmmmmmmmmmm
mmmmm <a href="ttt">test</a> mmmm mmmmm test test mm mmmmmmm
mmmmm <a href="ttt"> test </a> mmmm mmmmm test test mm mmmmmmm
mmmmm <a href="ttt">mmm test</a> mmmm mmmmm test test mmmmmmmm
mmmmm <a href="ttt">test mmm </a> mmmm mmmmm test test mmmmmmm
mmmmm <a href="ttt" > mmm test mmm </a> mmmm mm test test mmmm
mmmmm mmmmmmm mmmmmmm mmmmmm mmmmmmm mmmmm mmmmm mmmmmmmmmmmmm'
# 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