Remove all remaining charaters once the first non digit occurs within a vector of an array and keep everything before the non digit

1 次查看(过去 30 天)
I have an input with a column that has an ID in it. The ID looks like this, '2270|1|60'. I need to remove everything to the right of the first line within this vector, so that every value looks like 2270 for the ID. That said the position of the first '|' can vary as the ID number changes down the ID column, so the code needs to look for the most left '|', and then remove all other charaters after (including the first '|') that for each ID number.

采纳的回答

Fangjun Jiang
Fangjun Jiang 2016-4-8
编辑:Fangjun Jiang 2016-4-8
a={'22702270|1|60';
'2270|1|60';
'227022702270|1|60'};
b=regexprep(a,'\|.+','')
b =
'22702270'
'2270'
'227022702270'

更多回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2016-4-8
a={'2270|1|60';'223570|1|60'}
out=regexp(a,'\d+(?=|)','match','once')

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by