Heim >Backend-Entwicklung >C#.Net-Tutorial >C# implementiert das Abrufen ohne Berücksichtigung der Groß- und Kleinschreibung und hebt die gemeinsame Nutzung von Beispielcode hervor
In diesem Artikel werden hauptsächlich relevante Informationen zum C#-Abruf ohne Berücksichtigung der Groß- und Kleinschreibung und hervorgehobene Beispiele vorgestellt. Freunde in Not können sich auf
C#-Abruf ohne Berücksichtigung der Groß- und Kleinschreibung beziehen. Detaillierte Erklärung von Groß- und Kleinschreibung und Hervorhebung Beispiele
Heute bin ich auf ein Problem gestoßen: Wie man Schlüsselwörter auf einer Webseite hervorhebt, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird
Zum Beispiel: Text abcaBcabCaBCabcaBCa, Schlüsselwort bc, im Falle der Nichtberücksichtigung gibt es solche Insgesamt 6 Spiele.
Dann wird auf der Webseite abcaBcabCaBCabcaBCa angezeigt.
Viele Leute denken an die Ersetzungsfunktion. Aber in c# kann die Ersetzungsfunktion das Problem der Groß- und Kleinschreibung nicht lösen.
Beispielsweise wurden alle Wörter bc, Bc, bC und BC durchsucht, sie können jedoch nicht durch einen einzelnen Text ersetzt werden.
Der obige Text wurde aus dem Artikel von Daniel „Wancang Yimi“ reproduziert " - -"Schlüsselwörter ohne Berücksichtigung der Groß- und Kleinschreibung hervorheben - ASP".
Aber sein Artikel wurde in der ASP-Version geschrieben, und heute schreibe ich die C#-Version. Lassen Sie uns über die folgende Lösung sprechen.
Lösung: Verwenden Sie IndexOf
IndexOf(String, Int32, StringComparison)
Der angegebene String befindet sich im aktuellen String Der Index des ersten Vorkommens im Objekt.
Parameter
value 类型: System. String 要搜寻的字符串。 startIndex 类型: System. Int32 搜索起始位置。 comparisonType 类型: System. StringComparison 指定搜索规则的枚举值之一。 (OrdinalIgnoreCase:使用序号排序规则并忽略被比较字符串的大小写,对字符串进行比较。)
Code
/// <summary> /// 高亮查找关键字。 /// </summary> /// <param name="str">文本。</param> /// <param name="keyword">关键字</param> /// <returns>含高亮标识的文本。</returns> /// <remarks> /// 1、字母不区分大小写。 /// 2、CssClass 名称为 highlight。 /// </remarks> private string HighLightKeyword(string str, string keyword) { int index; var startIndex = 0; const string highLightBegin = "<span class='highlight'>"; const string highLightEnd = "</span>"; var length = highLightBegin.Length + keyword.Length; var lengthHighlight = length + highLightEnd.Length; while ((index = str.IndexOf(keyword, startIndex, StringComparison.OrdinalIgnoreCase)) > -1) { str = str.Insert(index, highLightBegin).Insert(index + length, highLightEnd); startIndex = index + lengthHighlight; } return str; }
Das obige ist der detaillierte Inhalt vonC# implementiert das Abrufen ohne Berücksichtigung der Groß- und Kleinschreibung und hebt die gemeinsame Nutzung von Beispielcode hervor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!