MATLAB: Give labels according to string

string

I have a cell array of strings with the following pattern
String Label
'Abc\a1\L\XYZ1R08' 1
'Abc\a1\R\XYZ1R09' 1
'Abc\a1\R\XYZ1R10' 1
'Abc\b2\L\XYZ2L01' 2
'Abc\b2\R\XYZ2L02' 2
'Abc\b2\R\XYZ2L03' 2
'Abc\c3\L\XYZ2L04' 3
'Abc\c3\R\XYZ2L05' 3
'Abc\d4\L\XYZ2L06' 4
'Abc\d4\R\XYZ2L07' 4
i wanted to give a new variable, "Label', values according to a1,b2,c3,d4, etc

Best Answer

Try this:
String = {'Abc\a1\L\XYZ1R08'
'Abc\a1\R\XYZ1R09'
'Abc\a1\R\XYZ1R10'
'Abc\b2\L\XYZ2L01'
'Abc\b2\R\XYZ2L02'
'Abc\b2\R\XYZ2L03'
'Abc\c3\L\XYZ2L04'
'Abc\c3\R\XYZ2L05'
'Abc\d4\L\XYZ2L06'
'Abc\d4\R\XYZ2L07'};
grpstr = regexp(String, '(?<=\\)\w{2}', 'once','match'); % Get Two Letters After First ‘\’
Group = findgroups(grpstr);
Result = {String, Group} % Cell Array
T1 = table(string(String), Group) % Table
producing:
T1 =
10×2 table
Var1 Group
__________________ _____
"Abc\a1\L\XYZ1R08" 1
"Abc\a1\R\XYZ1R09" 1
"Abc\a1\R\XYZ1R10" 1
"Abc\b2\L\XYZ2L01" 2
"Abc\b2\R\XYZ2L02" 2
"Abc\b2\R\XYZ2L03" 2
"Abc\c3\L\XYZ2L04" 3
"Abc\c3\R\XYZ2L05" 3
"Abc\d4\L\XYZ2L06" 4
"Abc\d4\R\XYZ2L07" 4