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

data

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.

Best Answer

a={'22702270|1|60';
'2270|1|60';
'227022702270|1|60'};
b=regexprep(a,'\|.+','')
b =
'22702270'
'2270'
'227022702270'