DA0013: String.Split 또는 String.Substring 사용률이 높습니다.DA0013: High usage of String.Split or String.Substring

규칙 IDRule Id DA0013DA0013
범주Category .NET Framework 사용 지침.NET Framework Usage Guidance
프로파일링 방법Profiling methods 샘플링Sampling
메시지Message String.Split 및 String.Substring 함수 사용을 줄여 보십시오.Consider reducing use of String.Split and String.Substring functions.
규칙 유형Rule type 경고Warning

원인Cause

System.String.Split 또는 System.String.Substring 메서드 호출이 프로파일링 데이터의 상당한 부분을 차지합니다.Calls to the System.String.Split or System.String.Substring methods are a significant portion of the profiling data. 문자열에 부분 문자열이 있는지 테스트할 경우 System.String.IndexOf 또는 System.String.IndexOfAny를 사용해 보세요.Consider using System.String.IndexOf or System.String.IndexOfAny if you are testing for the existence of a substring in a string.

규칙 설명Rule Description

Split 메서드는 문자열 개체에서 사용되고 원래 문자열의 부분 문자열이 포함된 문자열의 새 배열을 반환합니다.The Split method operates on a String object and returns a new array of Strings that contains the substrings of the original. 이 함수는 반환된 배열 개체의 메모리를 할당하고 함수가 찾은 각 배열 요소의 새 문자열 개체를 할당합니다.The function allocates memory for the returned array object and allocates a new String object for each array element it finds. 마찬가지로 Substr 메서드는 문자열 개체에서 사용되고 요청된 부분 문자열과 일치하는 새 문자열을 반환합니다.Similarly, the Substr method operates on a String object and returns a new String that is equivalent to the substring that was requested.

응용 프로그램에서 메모리 할당 관리가 중요할 경우 String.Split 및 String.Substr 메서드의 대안을 사용해 보세요.If managing memory allocations is critical in your application, consider using alternatives to the String.Split and String.Substr methods. 예를 들어 String 클래스의 새 인스턴스를 만들지 않고 IndexOf 또는 IndexOfAny 메서드를 사용하여 문자열 내에서 특정 부분 문자열을 찾을 수 있습니다.For example, you can use either the IndexOf or IndexOfAny method to locate a specific substring within a character String without creating a new instance of the String class.

경고를 조사하는 방법How to Investigate a Warning

[오류 목록] 창에서 메시지를 두 번 클릭하여 샘플링 프로필 데이터의 함수 정보 뷰로 이동합니다.Double-click the message in the Error List window to navigate to the Function Details View of the sampling profile data. 호출 함수를 검사하여 System.String.Split 또는 System.String.Substr 메서드를 가장 빈번히 사용하는 프로그램의 섹션을 찾습니다.Examine the calling functions to find the sections of the program that make the most frequent use of the System.String.Split or System.String.Substr methods. 가능할 경우 String 클래스의 새 인스턴스를 만들지 않고 IndexOf 또는 IndexOfAny 메서드를 사용하여 문자열 내에서 특정 부분 문자열을 찾으세요.If it is possible, use either the IndexOf or IndexOfAny method to locate a specific substring within a character String without creating a new instance of the String class.