re = /(.*?)((?>globalis|transnat|facili|container|LIC|trad|TNC).+?)\s+(.*?)/mi
str = '- Freedom of trade
- The World Trade Organisation (WTO) is allowing free trade between all countries.
- This causes globalisation because allowing freedom of trade means anyone can trade with anyone and get better access to ores & minerals.
---
- Containerisation
- Containerisation is when products are put in big boxes to be transported all around the world.
- It causes globalisation because it made it easy & cheap transport things overseas.
- Lots of things were modified to fit the new containers and make it the industry standard.
---
- Locating outside of home countries
- Companies (e.g. IKEA) are building market, outside of where they were originally located
- Locating in foreign countries can allow companies to take advantage of local suppliers and local materials.
- IKEA was founded in Sweden but now sells in 38 countries like Iceland, Kuwait and Malaysia.
---
- Improvements of communications
- The internet and mobile phones give people more access to communication outside of their country.
---
- Cheap Labour
- In countries like India, China and Brazil, labour costs are much lower.'
subst = '$1 ==$2== $3'
result = str.gsub(re, subst)
# Print the result of the substitution
puts result
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