String[][] CharSequence. , , CharSequence, , java.util.regex.Matcher , .
:
public class Main {
    public static void main(String[] args) {
        String[][] array2d = createArray();
        int charSeqColumn = 0;
        CharSequence charSequnce = new Array2DColumnCharSequnce(array2d, charSeqColumn);
        System.out.println(charSequnce.toString());
        Pattern patttern = Pattern.compile("ext");
        Matcher matcher = patttern.matcher(charSequnce);
        while (matcher.find()) {
            String matchGroup = matcher.group();
            int start = matcher.start();
            int end = matcher.end() - 1;
            String msg = MessageFormat.format("{0} matched at: [{1}] - [{2}]", matchGroup, start, end);
            System.out.println(msg);
        }
    }
    private static String[][] createArray() {
        String[][] array2d = new String[2][10];
        array2d[0][0] = "N";
        array2d[0][1] = "e";
        array2d[0][2] = "x";
        array2d[0][3] = "t";
        array2d[0][4] = " ";
        array2d[0][5] = "N";
        array2d[0][6] = "e";
        array2d[0][7] = "x";
        array2d[0][8] = "t";
        array2d[0][9] = " ";
        array2d[1][0] = "H";
        array2d[1][1] = "e";
        array2d[1][2] = "l";
        array2d[1][3] = "l";
        array2d[1][4] = "o";
        array2d[1][5] = "W";
        array2d[1][6] = "o";
        array2d[1][7] = "r";
        array2d[1][8] = "l";
        array2d[1][9] = "d";
        return array2d;
    }
}
Next Next 
ext matched at: [1] - [3]
ext matched at: [6] - [8]
CharSequence,
class Array2DColumnCharSequnce implements CharSequence {
    private int column;
    private String[][] array2d;
    private int endIndex;
    private int startIndex;
    public Array2DColumnCharSequnce(String[][] array2d, int column) {
        this(array2d, column, 0, array2d[column].length);
        this.array2d = array2d;
        this.column = column;
    }
    public Array2DColumnCharSequnce(String[][] array2d, int column,
            int startIndex, int endIndex) {
        this.array2d = array2d;
        this.column = column;
        this.startIndex = startIndex;
        this.endIndex = endIndex;
    }
    public int length() {
        return endIndex - startIndex;
    }
    public char charAt(int index) {
        String charString = array2d[column][startIndex + index];
        return charString.charAt(0);
    }
    public CharSequence subSequence(int start, int end) {
        Array2DColumnCharSequnce array2dColumnCharSequnce = new Array2DColumnCharSequnce(
                array2d, column, start, end);
        return array2dColumnCharSequnce;
    }
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder(this);
        return sb.toString();
    }
}
:
Array2DColumnCharSequnce , , , char.
CharSequence
CharSequence , java, , , .
Java, CharSequence
.
, , .
public static void main(String[] args) {
    String[][] array2d = createArray();
    CharSequence charSequnce = new Array2DColumnCharSequnce(array2d, 0);
    boolean contentEquals = "Next Next ".contentEquals(charSequnce);
    System.out.println(contentEquals);
    CharSequence column1CharSequnce = new Array2DColumnCharSequnce(array2d, 1);
    String replaced = "I want to say Next Next ".replace(charSequnce, column1CharSequnce);
    System.out.println(replaced);
}
true
I want to say HelloWorld
, , . , , "" .