how to make table of ip address numbers

조회 수: 2 (최근 30일)
Jay Hanuman
Jay Hanuman 2016년 11월 27일
댓글: Jay Hanuman 2016년 11월 27일
I attached ip address data file. I want to make table of ip address numbers. i.e. suppose I have ip addresses
10.0.12.4
10.0.12.5
10.0.7.4
10.0.8.5
10.0.8.4
then it should be in table format with 4 columns
10 0 12 4
10 0 2 5
10 0 7 4
10 0 8 5
10 0 8 4
how to do this.

채택된 답변

Guillaume
Guillaume 2016년 11월 27일
편집: Guillaume 2016년 11월 27일
If using R2016b, you can use the new string type. It is then trivial to split the strings in one go with split and then convert to numbers with double:
numericip = double(split(string(X), '.'))
Otherwise, you can use the old-fashioned strsplit + str2double wrapped in a cellfun to create a vector per ip string. You have to use the 'UniformOutput', false option to store these vectors in a cell array, and then convert the whole cell array back to a matrix with cell2mat.
numericip = cell2mat(cellfun(@(ip) str2double(strsplit(ip, '.')), X, 'UniformOutput', false))
The first option is significantly faster (and less to type).

추가 답변 (1개)

Daniel kiracofe
Daniel kiracofe 2016년 11월 27일
strsplit() will split up the strings for you. Then use sprintf() to make the formatting
https://www.mathworks.com/help/matlab/ref/strsplit.html

카테고리

Help CenterFile Exchange에서 Data Type Conversion에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by