Adding space/symbol to the readed line.
3 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
Cedric
2013 年 1 月 11 日
In the line that you give at the top of your question, you already inserted spaces actually (?) Do you want to match a pattern (here '333' + whatever + '000') and insert one space directly after each match, or is it simpler than pattern matching (e.g. because the format is more regular that what you get with '\w*')? In your example, where did spaces in ' 5.100 1.230 ' come from? Are they already there or do you have to add them as well (I'm asking as they don't match your pattern)?
採用された回答
Cedric
2013 年 1 月 11 日
編集済み: Cedric
2013 年 1 月 11 日
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
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!