Wie kann ich einen unbekannten String in einem Array finden? | finding an unknown string in an string array
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Patrick Benz
am 27 Sep. 2021
Kommentiert: Patrick Benz
am 27 Sep. 2021
Ich möchte in einem 127200 x 19 string Array einen bestimmten String finden.
Wie dieser genau aussieht weiß ich nicht, ich weiß nur, dass dieser mit einem " * " beginnt. In anderen Sprachen gibt es ja verschiedene Möglichkeiten einen unbekannten String zusammenzusetzen.
Beispielsweise mit:
" *" & *
Kann ich sowas auch in Matlab machen?
0 Kommentare
Akzeptierte Antwort
Konrad
am 27 Sep. 2021
Hi Patrick
wenn ich richtig verstehe möchtest Du alle strings im array finden die mit * anfangen?! Das kannst Du so machen:
strarr = ["123" "456" "*789"; "abc" "*def" "ghi"]
idx = startsWith(strarr,'*') % das sind die Indices der strings die mit * anfangen
strarr(idx) % und das die strings.
LG, Konrad
3 Kommentare
Konrad
am 27 Sep. 2021
Für mehr Flexibilität nehme ich immer regexp(), Regular expressions sind aber halt auch etwas komplexer...
Um ein * an 2. Stelle zu finden, wobei an 1. Stelle und ab der 3. Stelle * alles stehen darf, könnte die regex so aussehen:
'^.\*.*'
also um die Indices zu bekommen:
idxCell = regexp(strarr,'^.\*.*','once');
idx = ~cellfun(@isempty,idxCell);
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!