- Home /
Get text between two tags C#
I have this string:
<div class="s20 red">68.000.000 kr.</div>
<div class="remem">
<input type="checkbox" id="chkRemember_d6b706eaeb544dd6a319bc9d64db7f4e"/>
<label for="chkRemember_d6b706eaeb544dd6a319bc9d64db7f4e" class="gray bold s11 upper">Husk</label></div>
</div>
</div>
The string can't be altered.
But I only want the string 68.000.000 kr.
How can I delete everything in the string except 68.000.000 kr.?
Comment
Best Answer
Answer by JustFun · Aug 31, 2014 at 05:13 PM
Use regular expressions. Something like this:
using System.Text.RegularExpressions;
public string ParseKredits(string data)
{
string pattern = @"[1-9]{1}\d{0,2}\.?(\d{1,3}\.?)*\skr\.";
Regex regex = new Regex(pattern, RegexOptions.None);
Match m = regex.Match(data);
if(m.Success)
{
return m.Value;
}
return string.Empty;
}
Thank you so much for your answer. I don't understand the pattern though. What should I do to get: 12.411 m² from this string?:
<div class="s20 red">68.000.000 kr.</div>
<div class="remem">
<input type="checkbox" id="chkRemember_d6b706eaeb544dd6a319bc9d64db7f4e"/>
<label for="chkRemember_d6b706eaeb544dd6a319bc9d64db7f4e" class="gray bold s11 upper">Husk</label></div>
</div>
</div>
<div class="kf3 tip-white" title="Antal kvadratmeter grund (mæglerens registrering)"><span>Grund</span>12.411 m²</div>
string pattern = @"[1-9]{1}\d{0,2}\.?(\d{1,3}\.?)*\sm²";
Sometimes regular expressions are priceless. A couple of links, if you want to learn it deeper:
http://msdn.microsoft.com/EN-US/library/hs600312(v=VS.110,d=hv.2).aspx
monodevelop has something useful : Tools -> Regex Toolkit.
i develop with visual studio, but pull monodevelop out when creating regex stuff.