add_rewrite_rules prefix everything

Have you ever consider to use rewrire_rules_array filter to alter $rewrite_rules?

 /**
 * Example of Changing All Rewrite Rules
 *
 * @param  array $rewrite_rules The compiled array of rewrite rules.
 * @return array                The compiled array of rewrite rules (altered).
 */
function wpse_263624_rewrite_rules_example( $rewrite_rules ) {

    $prefixes = array( 'otro', 'esto' );
    $prefix_regexp = '(' . implode( '|', $prefixes ) . ')/';
    $new_rewrite_rules = array();

    $match_pattern = '/\$matches\[(\d)\]/si';

    foreach ( $rewrite_rules as $rewrite_rule => $match ) {

        // Incrementing $match becaouse prefixes goes as capturing group.
        $new_match = preg_replace_callback( $match_pattern , function( $m ){
            return sprintf('$matches[%d]', $m[1] + 1);
        }, $match);

        // Adding Prefix Group and New Value for our match.
        $new_rewrite_rules[ $prefix_regexp . $rewrite_rule ] = $new_match;
    }
    return $new_rewrite_rules;
}
add_filter( 'rewrite_rules_array', 'wpse_263624_rewrite_rules_example' );

It ends up in something like this..

changed rewrite rules array