Hi,
I'm trying to make a script that will replace/erase some of words from table of strings.
I want to create list of key words in a Published Parameter (multiple choice) that will be piked by user. When I pick one KeyWord script works fine but with more doesn't work at all. How can I make it to loop through all picked words?
str1 is with Published Parameter and
str2 is with list of words, but there should be more of them so it will look horrible ;)
EDIT: words are single. Additional problem I have now is how to make them be whole words only eg. Landhotel shouldn't be erased HOTEL, only Land Hotel -> Land.
And additional question is there a way to replace RegEx matching with sth shorter? I'm new in scripting so my code is vary basic :)
I have such a script in PythonCaller:
import fme
import fmeobjects
import re
def KeyWord_replacer (feature):
    str1 = feature.getAttribute('Name')
    str2 = feature.getAttribute('Name2')
    keyW = FME_MacroValuesl'KEY_WORDS']
    str1 = str1.lower()
    str2 = str2.lower()
    keyW = keyW.lower()
   Â
    str1 = str1.replace(keyW,'')
    str2 = str2.replace('restaurant','').replace('ristorante','').replace('hotels','').replace('hotel','')
    str1 = re.sub(r'\s{2,}',' ',str1)
    str2 = re.sub(r'\s{2,}',' ',str2)
   Â
    str1 = re.sub(r'\A\s+','',str1)
    str2 = re.sub(r'\A\s+','',str2)
   Â
    str1 = re.sub(r'\s$','',str1)
    str2 = re.sub(r'\s$','',str2)
    feature.setAttribute('Name', str1)
    feature.setAttribute('Name2', str2)