input: Write a function to extract all public email addresses from a given string using regular expressions. This function should return a list of email addresses that were found in the input string. If no email addresses are found, it should return an empty list.
  
  def extract_emails(text):
    emails = re.findall(r"[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+", text)
    return emails
  
  assert extract_emails("My email is john@example.com and yours is john@gmail.com") == ["john@example.com", "john@gmail.com"]
  assert extract_emails("There are no emails here.") == []
  assert extract_emails("") == []
  assert extract_emails("invalid@address and valid@email.com") == ["valid@email.com"]
output: import re
  
  def extract_emails(text):
    emails = re.findall(r"[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+", text)
    return emails