вопрос весьма неоднозначный (разный размер не означает различный тип и т.д.), но я понял, что вы хотите вырезать левосторонние или крайние правые элементы второго вектора полукокса (здесь SecondCharVector
) в соответствуют размеру первого символа char (здесь FirstCharVector
).
Некоторые из примеров символьные векторов:
% FirstCharVector
является 1x99 символ вектор.
FirstCharVector = [ repmat('abcdefghij', 1, 9), 'abcdefghi' ];
% SecondCharVector
является 1x105 вектор символ.
SecondCharVector = [ repmat('abcdefghij', 1, 10), 'abcde' ];
Чтобы отрезать левосторонние элементы (руководитель струны) SecondCharVector
, чтобы сделать его такой же размер, как FirstCharVector
:
SecondCharVector(1:(size(SecondCharVector, 2)-size(FirstCharVector, 2))) = [];
Или отрезать крайние правые элементы (хвост строки) из SecondCharVector
чтобы сделать его такой же размер, как FirstCharVector
:
SecondCharVector(size(FirstCharVector, 2)+1:end) = [];
Пожалуйста, обратите внимание, что этот код предполагает, что SecondCharVector
длиннее в горизонтальном размере, чем FirstCharVector
, и это не проверяется.
Что вы хотите сравнить? Другими словами, можете ли вы привести пример для двух строк, которые должны быть равны, а два - разные? – Jonas
первый - это сообщение, а второе - тоже, но, похоже, не имеет такого же типа, первый символ 1 * 99 и второй символ 1 * 105, и мне нравится сравнивать эти два сообщения. – lola
Не могли бы вы рассказать нам, что вы означает сравнить? Сам по себе этот термин неоднозначен; см. [strcmp] Matlab (http://www.mathworks.co.uk/help/techdoc/ref/strcmp.html) против Java [String.CompareTo] (http://docs.oracle.com/javase/6/ документы/API/Java/языки/String.html # CompareTo% 28java.lang.String% 29). – AE426082