Wie kann ich einen unbekannten String in einem Array finden? | finding an unknown string in an string array
2 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
採用された回答
Konrad
2021 年 9 月 27 日
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 件のコメント
Konrad
2021 年 9 月 27 日
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);
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!