Compare two columns and return vallue from substring in google sheets

Solution for Compare two columns and return vallue from substring in google sheets
is Given Below:

Basically I’m too dumb to figure out how to update my works sheet.

We’ve used a spreadsheet to write down all our protocols and they all are linked to an address which along the years each worker has put data in their own way and got messy, so I wanna update it to discard all unnecessary info (like street name, zipcode, etc) and just put the name of the city.

TL:DR

What I wanted to do is: I have a column with full addresses written in so particular standard and a column with the list of cities. I want a formula that will search each city name inside the full address column and return just the name of the city that is written somewhere in the cell.

Edit: Here’s a sample of it: https://docs.google.com/spreadsheets/d/1pP1CK2PPiGy2q_3CsCHHnShfa5bfddqRUfKEQWFERiw/edit?usp=sharing
(The column C should find the city name from each cell in column A)

ADDRESS IN Column A, list of cities in Column B:

=ARRAYFORMULA(REGEXEXTRACT(A2:A,TEXTJOIN("|",TRUE,B:B)))