# Identify whether two companies are the same

I am trying to solve a problem where I need to map multiple variations of a company name to a single name. For example: say I have a company named Super Idea Corporation Limited.

I need to resolve the following to Super Idea Corporation Limited

• SICL
• Super Idea Corp Ltd
• SIC Ltd
• SIC Limited

Is there a non regex way of doing this? The reason I am averse to using regex is that there are a lot of business names that can be represented in many different ways. I want something that is more flexible and adaptive.

• Can you explain how this question is related to Artificial Intelligence, as defined in our on-topic page (ai.stackexchange.com/help/on-topic)?
– nbro
Sep 15 at 1:13
• @nbro, I am not very well researched on NLP. Asked here to see if there is any work done NLP-wise on this particular kind of problem. Hence the tag. Sep 15 at 2:48

## 1 Answer

Have a look at Named Entity Recognition (NER); these algorithms are mainly concerned with recognising that there is an entity, but often also include normalising the name to a canonical form for information retrieval -- this is what you would need.

In a previous job I actually implemented this, using a fuzzy match with variable word order. You would still need to map Corp and Corporation onto each other as exchangable, and deal with acronyms, but that should be tractable.