using find function for char
108 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
sermet
am 16 Apr. 2015
Bearbeitet: Guillaume
am 16 Apr. 2015
line =
10 L1 L2 L5 C1 C2 P2 C5 S1 S2# / TYPES OF OBSERV
Name Size Bytes Class
line 1x81 162 char
%I need to use find function for each character in line. For example, I need to know which column is L1 or L2.
0 Kommentare
Akzeptierte Antwort
Guillaume
am 16 Apr. 2015
Bearbeitet: Guillaume
am 16 Apr. 2015
Do you actually want to find which column of the string where L1 and L2 are, or if L1 is the second element and L2 the third?
If the former, then use Michael's answer. If the latter, then the best thing to do would be to split the string at the whitespaces then use strcmp:
line = '10 L1 L2 L5 C1 C2 P2 C5 S1 S2# / TYPES OF OBSERV';
splitline = strsplit(line);
L1idx = find(strcmp(splitline, 'L1'))
L2idx = find(strcmp(splitline, 'L2'))
4 Kommentare
Guillaume
am 16 Apr. 2015
Bearbeitet: Guillaume
am 16 Apr. 2015
I cannot reproduce your problem with the example given. My answer gives me 2 and 3 as output.
Can you find out the ASCII value of the extra characters, as it's not obvious what they are from your comment. You can get the ASCII value of a character by converting it to double, eg:
c = 'A';
asciival = double(c) %should return 65
Weitere Antworten (1)
Michael Haderlein
am 16 Apr. 2015
line='10 L1 L2 L5 C1 C2 P2 C5 S1 S2';
strfind(line,'L2')
ans =
13
0 Kommentare
Siehe auch
Kategorien
Mehr zu Characters and Strings finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!