re = /\(ID\:\ (?<resource_id>[a-z|\d|\ |\-]*[a-z])/m
str = 'module.sh1.aws_autoscaling_group.search_head: Creation complete after 40s (ID: sh1 - sre-sandbox - search-head)
module.kms_key.aws_kms_key.stack_key: Destruction complete after 22s
module.iam_profile.aws_iam_role.stack_iam_role: Destruction complete after 1s'
# 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