<?php

$columnNames = 'QuestionContent | OptionType | NoofAnswers | Answer | ReplyType | QuestionMarks';
$columnNames = explode( ' | ', $columnNames );

$rows = <<<END
Name these 2 flowers |        A-F |           2 |      C |  Multiple |             5
        What is 2+2? |        A-D |           1 |    ABD |    Single |             5
END;
$rows = explode( "\n", $rows );
foreach ( $rows as &$row ) {
    $row = array_map( trim, explode( ' | ', $row ) );
    $row = array_combine( $columnNames, $row );
}

echo "Before:\n";
var_export( $rows );

// Do this (preferably) before looping over the rows:
$specialOptionTypes = array(
    'Yes or No' => array( 'Y', 'N' ),
    'True or False' => array( 'T', 'F' ),
);

foreach ( $rows as &$row ) {
    // Do this for each row:
    if ( array_key_exists( $row['OptionType'], $specialOptionTypes ) ) {
        $options = $specialOptionTypes[ $row['OptionType'] ];
    } else if ( preg_match( '/^([A-Z])-([A-Z])$/', $row['OptionType'], $match ) ) {
        $options = range( $match[1], $match[2] );
    } else {
        // issue warning about unrecognized option type
        $options = array();
    }
    $right = str_split( $row['Answer'] );  // or explode() on a delimiter, if any
    $wrong = array_diff( $options, $right );
    $row['WrongAnswers'] = implode( '', $wrong );  // if you actually want a string
}

echo "\nAfter:\n";
var_export( $rows );
