def replace_pronon (message):
message = message.lower()
if 'me' in message:
return re.sub('me', 'you', message)
if 'my' in message:
# Replace 'my' with 'your'
return re.sub('my', 'your', message)
if 'your' in message:
# Replace 'your' with 'my'
return re.sub('your', 'my', message)
if 'you' in message:
# Replace 'you' with 'me'
return re.sub('you', 'i', message)
if 'yours' in message:
return re.sub('yours','mine',message)
if 'you will' in message:
return re.sub('you will','I will',message)
if 'you have' in message:
return re.sub('you have','I have',message)
if 'are' in message:
return re.sub('are','am',message)
if 'i will' in message:
return re.sub('i will','you will',message)
if 'i have ' in message:
return re.sub('i have ','you have',message)
if 'i would ' in message:
return re.sub('i would ','you would',message)
if 'i' in message:
return re.sub('i','you',message)
if 'was' in message:
return re.sub('was','were',message)
if 'were ' in message:
return re.sub('were','was',message)
return message
with
def run(self, dispatcher, tracker, domain):
i do know how help me
from rasa_sdk import Action
from rasa_sdk.events import SlotSet
class ActionCheckRestaurants(Action):
def name(self) -> Text:
return "action_replace_pronon"
def run(self,
dispatcher: CollectingDispatcher,
tracker: Tracker,
domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
message = '<our message as a string here>'
if 'me' in message:
message = re.sub('me', 'you', message)
if 'my' in message:
# Replace 'my' with 'your'
message = re.sub('my', 'your', message)
if 'your' in message:
# Replace 'your' with 'my'
message = re.sub('your', 'my', message)
if 'you' in message:
# Replace 'you' with 'me'
message = re.sub('you', 'i', message)
if 'yours' in message:
message = re.sub('yours','mine',message)
if 'you will' in message:
message = re.sub('you will','I will',message)
if 'you have' in message:
message = re.sub('you have','I have',message)
if 'are' in message:
message = re.sub('are','am',message)
if 'i will' in message:
message = re.sub('i will','you will',message)
if 'i have ' in message:
message = re.sub('i have ','you have',message)
if 'i would ' in message:
message = re.sub('i would ','you would',message)
if 'i' in message:
message = re.sub('i','you',message)
if 'was' in message:
message = re.sub('was','were',message)
if 'were ' in message:
message = re.sub('were','was',message)
dispatcher.utter_message(message)
return []
Keep in mind that if you want to sub only once, you need to utter immediately after replacing instead of proceeding to the next replacement.
Sorry for the malformed code formatting… unfortunately, the editor didnt let me do it better!