Convert address to multi value during migration
I was able to accomplish this by creating a custom process plugin for the address field.

  field_address:
    -
      plugin: myaddress
      source:
        locality: city
        administrative_area: state
        postal_code: postalcode


&lt;?php

namespace Drupal\my_migration\Plugin\migrate\process;

use Drupal\migrate\MigrateExecutableInterface;
use Drupal\migrate\ProcessPluginBase;
use Drupal\migrate\Row;

/**
 * Maps values for address.
 *
 * @MigrateProcessPlugin(
 *   id = "myaddress"
 * )
 */
class MyAddress extends ProcessPluginBase {

  /**
   * {@inheritdoc}
   */
  public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {

    $parsed = [];
    // If city name has `and` or `or` it will create multiple address items.
    $cities = preg_split("/ (or|and) /", $value[0]);
    foreach ($cities as $city) {
      $data['country_code'] = 'US';
      $data['locality'] = $city;
      $data['administrative_area'] = $value[1];
      $data['postal_code'] = $value[2];
      $parsed[] = $data;
    }

    return $parsed;
  }

}


My plugin checks to see if there is a string and or or and if there is it converts it multiple values.  Of course, this works out for me because all are US and the cities are for the same state.