get unknow Strings(Text) out of other strings ?

3 views (last 30 days)
Hey Guys, can u give me an example, that shows how to get information out of a long String ? If......
the Word before the Information u want is known. Example
name: Benny age:23 ( I want the Info Age)
Out of this code
<HTML><FONT color="0000FF">Used Amplification(Hidden)</FONT></HTML>
I want the Information:Used Amplification(Hidden)
I guess the KEy is regexp again.....but i think i am wrong....sorry for these stupid questions.

Accepted Answer

Guillaume
Guillaume on 10 Sep 2014
If you don't want to learn the regex syntax, you can use strfind:
before = '<HTML><FONT color="0000FF">';
after = '</FONT></HTML>';
start = strfind(str, before) + length(before); %or just length(before)+1 if str always starts with before.
end = strfind(str, after) - 1;
result = str(start:end); %assumes there's only ever one match
It's of course a lot more flexible and shorter with regexes:
result = regexp(str, '<HTML><FONT color="[0-9A-F]+">(.*?)</FONT></HTML>', 'tokens', 'once'); %with added bonus it will work with any color, not just 0000FF.
  5 Comments
Guillaume
Guillaume on 11 Sep 2014
Matlab regular expression engine is slightly different than C++ std::regex and other posix compliant regexes, it's not as good on some things (e.g. captures) but the basics are the same so, yes, you can use tutorial for C++ or any other language.
This one seems to cover the basics and is language agnostic.
Star Strider
Star Strider on 11 Sep 2014
@Guillaume — That has to be one of the best explanations of regexp I’ve read!
+1

Sign in to comment.

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!