Wie kann ich einen unbekannten String in einem Array finden? | finding an unknown string in an string array
1 次查看(过去 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!