Adding space/symbol to the readed line.

4 views (last 30 days)
Hi.
I had readed line of numbers as a char, like this: 2.450333.000 2.450333.000 5.100 1.230 1.210333.000 333.000 7.87
I would like to add spaces between the numbers to separate them. Fuction can add a space before all occuring numbers. It isn't importent how many space will be before the number, but that every number must be separately.
I was using B = regexprep(A, '333(\w*).000', ' 333.000 ') but when puted together numbers will change what can happen someday, it won't work. Can You suggest me another, better idea?
Thank You.
  4 Comments
ZK
ZK on 11 Jan 2013
Spaces between ' 5.100 1.230 ' were there. Yes I would like to give a space before and after all numbers so it would look like this:
2.450 333.000 2.450 333.000 5.100 1.230 1.210 333.000 333.000 7.870

Sign in to comment.

Accepted Answer

Cedric Wannaz
Cedric Wannaz on 11 Jan 2013
Edited: Cedric Wannaz on 11 Jan 2013
Assuming that your number format is characterized by always having 3 digits after the decimal dot, you can use the following instead of matching numbers that can vary (e.g. 3's):
s = '2.450333.0002.450333.0005.1001.2301.210333.000333.0007.870' ;
regexp( s, '\d*.\d{3}', 'match' )
Note that the {3} means 3 occurrences of the previous \d and is not related to the 3's in the string.
Cedric
  1 Comment
ZK
ZK on 11 Jan 2013
Yes I had noticed. Thank You, with small changes I will be using it to many patterns. Greetings.

Sign in to comment.

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!