도전:
주어진 텍스트에서 처음 나타나는 문자열을 바꾸는 것은 프로그래밍에서 일반적인 작업입니다. 이 문서에서는 .NET에서 이를 효율적으로 수행하는 방법을 살펴봅니다.
해결책:
.NET에서 처음 나타나는 문자열을 바꾸려면 다음 방법을 사용할 수 있습니다.
<code class="language-csharp">string ReplaceFirst(string text, string search, string replace) { int pos = text.IndexOf(search); if (pos < 0) return text; return text.Substring(0, pos) + replace + text.Substring(pos + search.Length); }</code>
이 방법은 원본 텍스트, 검색할 문자열, 대체 문자열이라는 세 가지 매개변수를 사용합니다. 먼저 IndexOf
을 사용하여 텍스트에서 검색 문자열이 처음 나타나는 인덱스를 찾습니다. 항목이 발견되지 않으면(즉, pos가 음수인 경우) 원본 텍스트가 변경되지 않고 반환됩니다.
다음으로, 이 방법은 검색 문자열이 처음 발생하기 전의 하위 문자열(인덱스 0부터 pos까지), 대체 문자열, 검색 문자열 뒤의 하위 문자열(인덱스 pos search.Length부터 텍스트 끝까지)을 연결하는 방식으로 작동합니다. ) 새 문자열을 구성합니다.
예:
다음 예를 고려해 보세요.
<code class="language-csharp">string str = "The brown brown fox jumps over the lazy dog"; str = ReplaceFirst(str, "brown", "quick");</code>
이 코드가 실행되면 str 값은 "빠른 갈색 여우가 게으른 개를 뛰어넘습니다"가 됩니다. 처음 나타나는 "brown"이 "quick"으로 대체되었습니다.
추가 참고 사항:
Regex.Replace(String, String, Int32)
메서드도 이 작업을 수행할 수 있지만 여기에 제시된 사용자 지정 메서드보다 계산 비용이 더 많이 들 수 있습니다. 위 내용은 .NET에서 처음 나타나는 문자열만 바꾸는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!