Im String Suchen und ersetzen

heikoarndt

Mitglied
Hallo,
ich hab quasi einen Text als String und möchte diesen nach einem Begriff durchsuchen lassen (der Begriff ist natürlich auch ein String ).
Jedes Mal, wenn dieser Begriff vorkommt, egal ob groß oder klein geschrieben, soll dieser verlinkt werden, also muss ich an dieser Stelle ein Hyperlink-Tag einfügen.
Problem ist, dass ich Replace() nicht benutzen kann, da Replace() Groß- und Kleinschreibung differenziert.
Momentan löse ich die Sache so, aber so wird nur das erste Vorkommen des Begriffs berücksichtigt:

Code:
private String SetHyperLinks( String p_sText )
        {
            Glossary_Collection cGlossrayCollection = new Glossary_Collection();

            String sText  = p_sText.ToLower();

            for( int i=0; i < cGlossrayCollection.Count; i++ )
            {
                String sTitle = ((Entry)cGlossrayCollection[i]).Titel;

                if( sText.IndexOf( sTitle ) > -1 )
                {
                    p_sText = p_sText.Insert( sText.IndexOf( sTitle ), "<a href=\"Overview.aspx?value=1&ID="+ ((Entry)cGlossrayCollection[i]).ID +"\">" );            
                    sText = p_sText.ToLower();                        
                    p_sText = p_sText.Insert( sText.IndexOf( sTitle ) + sTitle.Length, "</a>" );
                }
            }
            return p_sText;
        }


Hat Jemand eine Idee, wie ich alle meine Begriffe im Text verlinke?
 
Geschickter kannst Du solche Aufgaben mir regulären Ausdrücken erledigen. Hierzu werden eigene Klassen extra angeboten.

Chris
 
Zurück