// Beispielaufruf:
// Label1.Text = MarkReference(TextBox1.Text, TextBox2.Text, 4);
public static string MarkReference(string text, string search, int num)
{
string referenceText = text.Trim();
string searchWord = search.Trim();
string moreLeftTag = "...", moreRightTag = "...";
int searchWordStartPos = referenceText.IndexOf(searchWord,
StringComparison.CurrentCultureIgnoreCase);
if (searchWordStartPos >= 0)
{
int referenceTextLength = referenceText.Length;
int searchWordLength = searchWord.Length;
int resultLeftLength = num, resultRightLength = num;
int resultLeftStartPos = searchWordStartPos - resultLeftLength;
int resultRightStartPos = searchWordStartPos + searchWordLength;
if (resultLeftStartPos < 0)
{
resultLeftLength = resultLeftLength + resultLeftStartPos;
resultLeftStartPos = 0;
moreLeftTag = "";
}
if ((resultRightStartPos + resultRightLength) > referenceTextLength)
{
resultRightLength = referenceTextLength - resultRightStartPos;
moreRightTag = "";
}
return String.Format("{0}{1}<span id="highlight"">{2}</span>{3}{4}""
Alte URL:
/snippet/fundstelle-eines-suchbegriffs-markieren/1204