re = /(?<![a-zA-Z0-9])mini(?![a-zA-Z0-9])/
str = 'mini
mini abc
mini-abc (- could be anything else but not [a-zA-Z0-9])
abc mini
abc-mini (- could be anything else but [a-zA-Z0-9])
abc mini abc
abcminiabc-mini (- could be anything else but not [a-zA-Z0-9])
mini-abcminiabc (- could be anything else but not [a-zA-Z0-9])
miniabc-mini (- could be anything else but not [a-zA-Z0-9])
mini-miniabc (- could be anything else but not [a-zA-Z0-9])
abcmin-mini (- could be anything else but not [a-zA-Z0-9])
mini-abcmini (- could be anything else but not [a-zA-Z0-9])
miniabc
abcmini
abcminiabc'
# 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