Remove elements from string array
显示 更早的评论
What is the simpest way to remove string elements from an array? e.g. arr = [1, 2, 3, "x", "y", 10] would turn into [1,2,3,10]
4 个评论
Guillaume
2019-11-26
The first issue with your question is that the array [1, 2, 3, "x", "y", 10] cannot exist. You can't mix numbers and strings in a numeric or string array (you could in a cell array but the notation is different). Matlab will automatically convert the numbers to strings in order to create your array:
>> arr = [1, 2, 3, "x", "y", 10]
arr =
1×6 string array
"1" "2" "3" "x" "y" "10"
anon
2019-11-26
Guillaume
2019-11-26
What is the rule that dictates which elements should be removed from the string array?
anon
2019-11-26
回答(1 个)
Guillaume
2019-11-26
One possible way:
numericarray = double(yourstringarray); %convert string array to numeric. Text that can't be converted to numeric will end up as NaN.
numericarray = numericarray(mod(numericarray, 1) == 0); %only keep numbers that are integers. Will also remove NaNs.
类别
在 帮助中心 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!