MATLAB Answers

0

How to match a number between two characters?

Asked by Dario Plüch on 11 Nov 2019 at 13:19
Latest activity Edited by Matt J
on 11 Nov 2019 at 18:41
Hi,
Here is an example from a string: [180] Windabweichung
How can i extract the 180 ?
Thanks.

  0 Comments

Sign in to comment.

2 Answers

Answer by Matt J
on 11 Nov 2019 at 13:52
 Accepted Answer

>> str=extractBetween("[180] Windabweichung","[","]")
str =
"180"

  2 Comments

Matt J
on 11 Nov 2019 at 15:45
Dario's comment moved here:
Thanks Matt J,
it works perfect, but in the case for a table of strings as an input.
How can i get another table with extracted values from the input table?
Input=
and output with the same size but with returned numbers.
Thanks
Matt J
on 11 Nov 2019 at 18:34
What you have shown is a string array, not a table. But for string arrays, it should work just the same,
>> s=string({"[180] Windabweichung","[260] mmm"});
>> str=extractBetween(s,"[","]")
str =
1×2 string array
"180" "260"

Sign in to comment.


Answer by Matt J
on 11 Nov 2019 at 13:26
Edited by Matt J
on 11 Nov 2019 at 13:32

>> T=regexp('[180] Windabweichung','\[(\d+)\]','tokens'); T{:}
ans =
1×1 cell array
{'180'}

  0 Comments

Sign in to comment.