dpb
Posts:
6,677
Registered:
6/7/07
|
|
Re: Help using textscan or sscanf
Posted:
Jan 16, 2013 1:18 PM
|
|
On 1/16/2013 11:30 AM, Kevin Ellis wrote: > Hello, > > My problem is very simple, but I cannot find an efficient way to > accomplish it. Here is an excerpt of my array (which is one column of a > dataset): > > Subset001.AccountNumber(1:6,:) > > ans = > '154045001' > '926665001' > '615017' > '1976936151' > '801700' > '4506702001' > > I am trying to create a new account number in the form of a string. I > need to append '4412' to the the last 9 digits of the above account > numbers. So for the results is: > > '4412154045001' > '4412926665001' - Account Numbers have 9 digits so this is easy > '4412615017' - Only has 6 digits so take the whole account number > '4412976936151' - Has 10 digits so drop first and append to '4412' > etc. > > So my problem is difficult in that I need to use sscanf to find the last > 9 digits of the account number...
Nope...
>> s =strvcat('154045001','926665001','615017','1976936151','801700','4506702001'); >> [repmat('4412',6,1) s(:,end-9:end)] ans = 4412154045001 4412926665001 4412615017 44121976936151 4412801700 44124506702001 >>
I'd suggest in the end it _might_ be better to "normalize" the account no's by prepending zeros for the short strings. Then they would sort, etc., more nearly normally (for at least one definition of "normal", anyway).
--
|
|