How to make this string a = '(0 0 0)' into a double b = [0 0 0]?

3 次查看(过去 30 天)
Suppose I don't know what are the number inside the a string, it could be:
a = '(12 2.8 1.22)' % each number is separated by a single space
which should then be:
b = [12 2.8 1.22]

采纳的回答

Kevin Holly
Kevin Holly 2022-8-5
a = '(12 2.8 1.22)'
a = '(12 2.8 1.22)'
a = strrep(a,')',']');
a = strrep(a,'(','[');
b = str2num(a)
b = 1×3
12.0000 2.8000 1.2200

更多回答(1 个)

Fangjun Jiang
Fangjun Jiang 2022-8-5
编辑:Fangjun Jiang 2022-8-5
a = '(12 2.8 1.22)';
b=sscanf(a,'(%f %f %f)')
b = 3×1
12.0000 2.8000 1.2200
b=transpose(sscanf(a,'(%f %f %f)'))
b = 1×3
12.0000 2.8000 1.2200

类别

Help CenterFile Exchange 中查找有关 String 的更多信息

标签

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by