input: Write a python function to send an email with given parameters.
  assert send_email('your_host_address_here', your_port_here, 'your_username_here', 'your_password_here', 'recipient@example.com', 'Hello', 'This is a test email.') == 'Email sent successfully'
  assert send_email('your_host_address_here', your_port_here, 'your_username_here', 'wrong_password', 'recipient@example.com', 'Hello', 'This is a test email.') == 'Authentication failed'
  assert send_email('your_host_address_here', your_port_here, 'your_username_here', 'your_password_here', 'invalid_email', 'Hello', 'This is a test email.') == 'Invalid recipient email'
output: import smtplib
  from email.mime.text import MIMEText
  from email.mime.multipart import MIMEMultipart
  import re
  
  def send_email(host, port, username, password, recipient_email, subject, body):
      # Validate recipient email
      if not re.match(r"[^@]+@[^@]+\.[^@]+", recipient_email):
          return 'Invalid recipient email'
      
      # Create message
      msg = MIMEMultipart()
      msg['From'] = username
      msg['To'] = recipient_email
      msg['Subject'] = subject
      msg.attach(MIMEText(body, 'plain'))
  
      try:
          # Connect to server
          server = smtplib.SMTP(host, port)
          server.starttls()
          server.login(username, password)
          
          # Send email
          server.sendmail(username, recipient_email, msg.as_string())
          server.quit()
          return 'Email sent successfully'
      except smtplib.SMTPAuthenticationError:
          return 'Authentication failed'
      except Exception as e:
          return str(e)