문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문
이 설명서는 보관되지만 유지 되지 않습니다.

String 클래스

업데이트: 2010년 7월

텍스트를 일련의 유니코드 문자로 나타냅니다.

네임스페이스:  System
어셈블리:  mscorlib(mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class String : IComparable, 
	ICloneable, IConvertible, IComparable<string>, IEnumerable<char>, 
	IEnumerable, IEquatable<string>

String 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Public 메서드XNA Framework에서 지원String(Char*)유니코드 문자 배열에 대한 지정된 포인터가 가리키는 값으로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifString(Char[])유니코드 문자 배열에서 나타내는 값으로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원String(SByte*)8비트 부호 있는 정수 배열에 대한 포인터가 나타내는 값으로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원String(Char, Int32)지정한 횟수만큼 반복되는 지정된 유니코드 문자가 나타내는 값으로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원String(Char*, Int32, Int32)유니코드 문자 배열에 대한 지정된 포인터가 나타내는 값, 해당 배열 내의 시작 문자 위치 및 길이로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원String(Char[], Int32, Int32)유니코드 문자 배열에서 나타내는 값, 해당 배열 내의 시작 문자 위치 및 길이로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드String(SByte*, Int32, Int32)8비트 부호 있는 정수 배열에 대한 지정된 포인터가 나타내는 값, 해당 배열 내의 시작 문자 위치 및 길이로 String 클래스의 새 인스턴스를 초기화합니다.
Public 메서드String(SByte*, Int32, Int32, Encoding)8비트 부호 있는 정수 배열에 대한 지정된 포인터가 나타내는 값, 해당 배열 내의 시작 문자 위치, 길이 및 Encoding 개체로 String 클래스의 새 인스턴스를 초기화합니다.
위쪽

  이름설명
Public 속성XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifChars현재 String 개체에서 지정된 문자 위치에 있는 Char 개체를 가져옵니다.
Public 속성XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLength현재 String 개체의 문자 수를 가져옵니다.
위쪽

  이름설명
Public 메서드XNA Framework에서 지원CloneString의 이 인스턴스에 대한 참조를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원Compare(String, String)지정된 두 String 개체를 비교하고 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원Compare(String, String, Boolean)대/소문자를 구분하거나 구분하지 않고 지정된 두 String 개체를 비교하여 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifCompare(String, String, StringComparison)지정된 규칙을 사용하여 지정된 두 String 개체를 비교하고 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원Compare(String, String, Boolean, CultureInfo)대/소문자를 구분하거나 구분하지 않고 지정된 두 String 개체를 비교하여 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다. 문화권별 정보가 비교에 영향을 줍니다.
Public 메서드정적 멤버s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifCompare(String, String, CultureInfo, CompareOptions)지정된 두 String 개체를 비교하고 정렬 순서에서 두 문자열 간의 관계를 나타내는 정수를 반환합니다. 지정된 비교 옵션 및 문화권별 정보가 비교에 영향을 줍니다.
Public 메서드정적 멤버XNA Framework에서 지원Compare(String, Int32, String, Int32, Int32)지정된 두 String 개체의 부분 문자열을 비교하고 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원Compare(String, Int32, String, Int32, Int32, Boolean)대/소문자를 구분하거나 구분하지 않고 지정된 두 String 개체의 부분 문자열을 비교하여 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifCompare(String, Int32, String, Int32, Int32, StringComparison)지정된 규칙을 사용하여 지정된 두 String 개체의 부분 문자열을 비교하고 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원Compare(String, Int32, String, Int32, Int32, Boolean, CultureInfo)대/소문자를 구분하거나 구분하지 않고 지정된 두 String 개체의 부분 문자열을 비교하여 정렬 순서에서 두 개체의 상대 위치를 나타내는 정수를 반환합니다. 문화권별 정보가 비교에 영향을 줍니다.
Public 메서드정적 멤버Compare(String, Int32, String, Int32, Int32, CultureInfo, CompareOptions)지정된 두 String 개체의 부분 문자열을 비교하고 정렬 순서에서 두 부분 문자열 간의 관계를 나타내는 정수를 반환합니다. 지정된 비교 옵션 및 문화권별 정보가 비교에 영향을 줍니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifCompareOrdinal(String, String)각 문자열에서 해당하는 Char 개체의 숫자 값을 계산해서 두 지정된 String 개체를 비교합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifCompareOrdinal(String, Int32, String, Int32, Int32)각 부분 문자열에서 해당하는 Char 개체의 숫자 값을 계산하여 두 지정된 String 개체의 부분 문자열을 비교합니다.
Public 메서드XNA Framework에서 지원CompareTo(Object)이 인스턴스를 지정된 Object와 비교하고 정렬 순서에서 이 인스턴스의 위치가 지정된 Object보다 앞인지, 뒤인지 또는 동일한지를 나타냅니다.
Public 메서드XNA Framework에서 지원CompareTo(String)이 인스턴스를 지정된 String 개체와 비교하고 정렬 순서에서 이 인스턴스의 위치가 지정된 String보다 앞인지, 뒤인지 또는 동일한지를 나타냅니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(Object)지정된 개체의 문자열 표현을 만듭니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(Object[])지정된 Object 배열에 있는 요소의 문자열 표현을 연결합니다.
Public 메서드정적 멤버Concat(IEnumerable<String>) String 형식의 생성된 IEnumerable<T> 컬렉션의 멤버를 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(String[])지정된 String 배열의 요소를 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(Object, Object)지정된 두 개체의 문자열 표현을 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(String, String) String 의 지정된 두 인스턴스를 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(Object, Object, Object)지정된 세 개체의 문자열 표현을 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(String, String, String) String 의 지정된 세 인스턴스를 연결합니다.
Public 메서드정적 멤버Concat(Object, Object, Object, Object)지정된 네 개체의 문자열 표현과 선택적 변수 길이 매개 변수 목록에 지정된 개체를 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifConcat(String, String, String, String) String 의 지정된 네 인스턴스를 연결합니다.
Public 메서드정적 멤버Concat<T>(IEnumerable<T>) IEnumerable<T> 구현의 멤버를 연결합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifContains이 문자열 내에서 지정한 String 개체가 발생하는지 여부를 나타내는 값을 반환합니다.
Public 메서드정적 멤버XNA Framework에서 지원Copy지정된 String과 동일한 값을 갖는 String의 새 인스턴스를 만듭니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifCopyTo이 인스턴스의 지정한 위치에 있는 지정한 수의 문자를 유니코드 문자 배열의 특정 위치에 복사합니다.
Public 메서드XNA Framework에서 지원EndsWith(String)이 문자열 인스턴스의 끝 부분과 지정한 문자열이 일치하는지 여부를 확인합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEndsWith(String, StringComparison)지정한 비교 옵션을 사용하여 비교할 때 지정한 문자열과 이 문자열 인스턴스의 끝 부분이 일치하는지 여부를 확인합니다.
Public 메서드EndsWith(String, Boolean, CultureInfo)지정한 문화권을 사용하여 비교할 때 이 문자열 인스턴스의 끝 부분과 지정한 문자열이 일치하는지 여부를 확인합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEquals(Object)이 인스턴스와 지정한 개체의 값이 같은지 여부를 확인합니다. 이 개체도 String 개체여야 합니다. (Object.Equals(Object)을(를) 재정의함)
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEquals(String)이 인스턴스와 지정한 다른 String 개체의 값이 같은지 여부를 확인합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEquals(String, String)지정된 두 String 개체의 값이 같은지 여부를 확인합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEquals(String, StringComparison)이 문자열과 지정한 String 개체의 값이 같은지 여부를 확인합니다. 매개 변수는 비교에 사용되는 문화권, 대/소문자 및 정렬 규칙을 지정합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEquals(String, String, StringComparison)지정된 두 String 개체의 값이 같은지 여부를 확인합니다. 매개 변수는 비교에 사용되는 문화권, 대/소문자 및 정렬 규칙을 지정합니다.
Protected 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifFinalize가비지 수집에서 회수하기 전에 개체에서 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Public 메서드정적 멤버XNA Framework에서 지원Format(String, Object)지정된 문자열에 있는 하나 이상의 서식 지정 항목을 지정된 개체의 문자열 표현으로 바꿉니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifFormat(String, Object[])지정된 문자열에 있는 서식 지정 항목을 지정된 배열에 있는 해당 개체의 문자열 표현으로 바꿉니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifFormat(IFormatProvider, String, Object[])지정된 문자열에 있는 서식 지정 항목을 지정된 배열에 있는 해당 개체의 문자열 표현으로 바꿉니다. 지정된 매개 변수에서 문화권별 서식 지정 정보를 제공합니다.
Public 메서드정적 멤버XNA Framework에서 지원Format(String, Object, Object)지정된 문자열에 있는 서식 지정 항목을 지정된 두 개체의 문자열 표현으로 바꿉니다.
Public 메서드정적 멤버XNA Framework에서 지원Format(String, Object, Object, Object)지정된 문자열에 있는 서식 지정 항목을 지정된 세 개체의 문자열 표현으로 바꿉니다.
Public 메서드XNA Framework에서 지원GetEnumerator이 문자열의 개별 문자에서 반복될 수 있는 개체를 검색합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifGetHashCode해당 문자열에 대한 해시 코드를 반환합니다. (Object.GetHashCode()을(를) 재정의함)
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifGetType현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Public 메서드XNA Framework에서 지원GetTypeCode String 클래스에 대한 TypeCode를 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOf(Char)이 문자열에서 지정된 유니코드 문자가 처음 발견된 인덱스를 보고합니다.
Public 메서드XNA Framework에서 지원IndexOf(String)이 인스턴스에서 지정된 문자열이 처음 발견된 인덱스를 보고합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOf(Char, Int32)이 문자열에서 지정된 유니코드 문자가 처음 발견된 인덱스를 보고합니다. 검색은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원IndexOf(String, Int32)이 인스턴스에서 지정된 문자열이 처음 발견된 인덱스를 보고합니다. 검색은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOf(String, StringComparison)현재 String 개체에서 지정된 문자열이 처음 발견된 인덱스를 보고합니다. 매개 변수는 지정된 문자열에 사용할 검색 유형을 지정합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOf(Char, Int32, Int32)이 인스턴스에서 지정된 문자가 처음 발견된 인덱스를 보고합니다. 검색은 지정된 문자 위치에서 시작하여 지정된 수의 문자 위치를 검사합니다.
Public 메서드XNA Framework에서 지원IndexOf(String, Int32, Int32)이 인스턴스에서 지정된 문자열이 처음 발견된 인덱스를 보고합니다. 검색은 지정된 문자 위치에서 시작하여 지정된 수의 문자 위치를 검사합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOf(String, Int32, StringComparison)현재 String 개체에서 지정된 문자열이 처음 발견된 인덱스를 보고합니다. 매개 변수는 현재 문자열의 검색 시작 위치와 지정된 문자열에 사용할 검색 유형을 지정합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOf(String, Int32, Int32, StringComparison)현재 String 개체에서 지정된 문자열이 처음 발견된 인덱스를 보고합니다. 매개 변수는 현재 문자열의 검색 시작 위치, 검색할 현재 문자열의 문자 수 및 지정된 문자열에 사용할 검색 유형을 지정합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOfAny(Char[])이 인스턴스에서 지정된 유니코드 문자 배열의 문자가 처음 발견된 인덱스를 보고합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOfAny(Char[], Int32)이 인스턴스에서 지정된 유니코드 문자 배열의 문자가 처음 발견된 인덱스를 보고합니다. 검색은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIndexOfAny(Char[], Int32, Int32)이 인스턴스에서 지정된 유니코드 문자 배열의 문자가 처음 발견된 인덱스를 보고합니다. 검색은 지정된 문자 위치에서 시작하여 지정된 수의 문자 위치를 검사합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifInsert String 의 지정된 인스턴스를 이 인스턴스의 지정된 인덱스 위치에 삽입합니다.
Public 메서드정적 멤버XNA Framework에서 지원Intern지정된 String에 대한 시스템의 참조를 검색합니다.
Public 메서드정적 멤버XNA Framework에서 지원IsInterned지정된 String에 대한 참조를 검색합니다.
Public 메서드IsNormalized()이 문자열의 형식이 유니코드 정규화 형식 C인지 여부를 나타냅니다.
Public 메서드IsNormalized(NormalizationForm)이 문자열의 형식이 지정한 유니코드 정규화 형식인지 여부를 나타냅니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifIsNullOrEmpty지정된 문자열이 null 이거나 Empty 문자열인지 여부를 나타냅니다.
Public 메서드정적 멤버IsNullOrWhiteSpace지정된 문자열이 null이거나 비어 있거나 공백 문자로만 구성되어 있는지 여부를 나타냅니다.
Public 메서드정적 멤버Join(String, IEnumerable<String>)각 멤버 사이에 지정된 구분 기호를 사용하여 String 형식의 생성된 IEnumerable<T> 컬렉션의 멤버를 연결합니다.
Public 메서드정적 멤버Join(String, Object[])각 요소 사이에 지정된 구분 기호를 사용하여 개체 배열의 요소를 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifJoin(String, String[])각 요소 사이에 지정된 구분 기호를 사용하여 문자열 배열의 모든 요소를 연결합니다.
Public 메서드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifJoin(String, String[], Int32, Int32)각 요소 사이에 지정된 구분 기호를 사용하여 문자열 배열의 지정된 요소를 연결합니다.
Public 메서드정적 멤버Join<T>(String, IEnumerable<T>)각 멤버 사이에 지정된 구분 기호를 사용하여 컬렉션의 멤버를 연결합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOf(Char)이 인스턴스에서 지정된 유니코드 문자가 마지막으로 발견된 인덱스 위치를 보고합니다.
Public 메서드XNA Framework에서 지원LastIndexOf(String)이 인스턴스에서 지정된 문자열이 마지막으로 발견된 인덱스 위치를 보고합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOf(Char, Int32)이 인스턴스에서 지정된 유니코드 문자가 마지막으로 발견된 인덱스 위치를 보고합니다. 검색은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원LastIndexOf(String, Int32)이 인스턴스에서 지정된 문자열이 마지막으로 발견된 인덱스 위치를 보고합니다. 검색은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOf(String, StringComparison)현재 String 개체에서 마지막으로 발견되는 지정된 문자열의 인덱스를 보고합니다. 매개 변수는 지정된 문자열에 사용할 검색 유형을 지정합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOf(Char, Int32, Int32)이 인스턴스의 부분 문자열에서 지정된 유니코드 문자가 마지막으로 발견된 인덱스 위치를 보고합니다. 검색은 지정된 문자 위치에서 시작하여 지정된 수의 문자 위치를 검사합니다.
Public 메서드XNA Framework에서 지원LastIndexOf(String, Int32, Int32)이 인스턴스에서 지정된 문자열이 마지막으로 발견된 인덱스 위치를 보고합니다. 검색은 지정된 문자 위치에서 시작하여 지정된 수의 문자 위치를 검사합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOf(String, Int32, StringComparison)현재 String 개체에서 마지막으로 발견되는 지정된 문자열의 인덱스를 보고합니다. 매개 변수는 현재 문자열의 검색 시작 위치와 지정된 문자열에 사용할 검색 유형을 지정합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOf(String, Int32, Int32, StringComparison)이 인스턴스에서 지정된 문자열이 마지막으로 발견된 인덱스 위치를 보고합니다. 매개 변수는 현재 문자열의 검색 시작 위치, 검색할 현재 문자열의 문자 수 및 지정된 문자열에 사용할 검색 유형을 지정합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOfAny(Char[])지정된 유니코드 문자 배열에 있는 하나 이상의 문자 중에서 맨 마지막으로 발견되는 문자의 인덱스 위치를 보고합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOfAny(Char[], Int32)지정된 유니코드 문자 배열에 있는 하나 이상의 문자 중에서 맨 마지막으로 발견되는 문자의 인덱스 위치를 보고합니다. 검색은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifLastIndexOfAny(Char[], Int32, Int32)지정된 유니코드 문자 배열에 있는 하나 이상의 문자 중에서 맨 마지막으로 발견되는 문자의 인덱스 위치를 보고합니다. 검색은 지정된 문자 위치에서 시작하여 지정된 수의 문자 위치를 검사합니다.
Protected 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifMemberwiseClone현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Public 메서드Normalize()텍스트 값이 이 문자열과 같지만 이진 표현의 형식이 유니코드 정규화 형식 C인 새 문자열을 반환합니다.
Public 메서드Normalize(NormalizationForm)텍스트 값이 이 문자열과 같지만 이진 표현의 형식이 지정한 유니코드 정규화 형식인 새 문자열을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifPadLeft(Int32)지정한 길이만큼 왼쪽의 안쪽 여백을 공백으로 채워서 이 인스턴스의 문자를 오른쪽에 맞추는 새 문자열을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifPadLeft(Int32, Char)지정한 길이만큼 왼쪽의 안쪽 여백을 지정된 유니코드 문자로 채워서 이 인스턴스의 문자를 오른쪽에 맞추는 새 문자열을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifPadRight(Int32)지정한 길이만큼 오른쪽의 안쪽 여백을 공백으로 채워서 이 문자열의 문자를 왼쪽에 맞추는 새 문자열을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifPadRight(Int32, Char)지정한 길이만큼 오른쪽의 안쪽 여백을 지정된 유니코드 문자로 채워서 이 문자열의 문자를 왼쪽에 맞추는 새 문자열을 반환합니다.
Public 메서드Remove(Int32)이 문자열에서 지정한 위치부터 마지막 위치 사이에 있는 모든 문자를 삭제합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifRemove(Int32, Int32)이 인스턴스의 지정된 위치에서 시작하여 지정된 수의 문자를 삭제합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifReplace(Char, Char)현재 인스턴스의 지정된 유니코드 문자가 지정된 다른 유니코드 문자로 모두 바뀌는 새 문자열을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifReplace(String, String)현재 인스턴스의 지정된 문자열이 지정된 다른 문자열로 모두 바뀌는 새 문자열을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifSplit(Char[])지정된 유니코드 문자 배열의 요소로 구분된 이 인스턴스의 부분 문자열이 들어 있는 문자열 배열을 반환합니다.
Public 메서드Split(Char[], Int32)지정된 유니코드 문자 배열의 요소로 구분된 이 인스턴스의 부분 문자열이 들어 있는 문자열 배열을 반환합니다. 매개 변수는 반환할 부분 문자열의 최대 수를 지정합니다.
Public 메서드s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifSplit(Char[], StringSplitOptions)지정된 유니코드 문자 배열의 요소로 구분된 이 문자열의 부분 문자열이 들어 있는 문자열 배열을 반환합니다. 매개 변수는 빈 배열 요소를 반환할지 여부를 지정합니다.
Public 메서드s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifSplit(String[], StringSplitOptions)지정된 문자열 배열의 요소로 구분된 이 문자열의 부분 문자열이 들어 있는 문자열 배열을 반환합니다. 매개 변수는 빈 배열 요소를 반환할지 여부를 지정합니다.
Public 메서드Split(Char[], Int32, StringSplitOptions)지정된 유니코드 문자 배열의 요소로 구분된 이 문자열의 부분 문자열이 들어 있는 문자열 배열을 반환합니다. 매개 변수는 반환할 부분 문자열의 최대 수 및 빈 배열 요소를 반환할지 여부를 지정합니다.
Public 메서드Split(String[], Int32, StringSplitOptions)지정된 문자열 배열의 요소로 구분된 이 문자열의 부분 문자열이 들어 있는 문자열 배열을 반환합니다. 매개 변수는 반환할 부분 문자열의 최대 수 및 빈 배열 요소를 반환할지 여부를 지정합니다.
Public 메서드XNA Framework에서 지원StartsWith(String)이 문자열 인스턴스의 시작 부분과 지정한 문자열이 일치하는지 여부를 확인합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifStartsWith(String, StringComparison)지정한 비교 옵션을 사용하여 비교할 때 지정한 문자열과 이 문자열 인스턴스의 시작 부분이 일치하는지 여부를 확인합니다.
Public 메서드StartsWith(String, Boolean, CultureInfo)지정한 문화권을 사용하여 비교할 때 이 문자열 인스턴스의 시작 부분과 지정한 문자열이 일치하는지 여부를 확인합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifSubstring(Int32)이 인스턴스에서 부분 문자열을 검색합니다. 부분 문자열은 지정된 문자 위치에서 시작됩니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifSubstring(Int32, Int32)이 인스턴스에서 부분 문자열을 검색합니다. 부분 문자열은 지정된 문자 위치에서 시작하고 길이도 지정되어 있습니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifToCharArray()이 인스턴스의 문자를 유니코드 문자 배열에 복사합니다.
Public 메서드ToCharArray(Int32, Int32)이 인스턴스의 지정된 부분 문자열에 있는 문자를 유니코드 문자 배열에 복사합니다.
Public 메서드XNA Framework에서 지원ToLower()이 문자열의 복사본을 소문자로 변환하여 반환합니다.
Public 메서드XNA Framework에서 지원ToLower(CultureInfo)지정한 문화권의 대/소문자 규칙을 사용하여 소문자로 변환된 이 문자열의 복사본을 반환합니다.
Public 메서드s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifToLowerInvariant고정 문화권의 대/소문자 규칙을 사용하여 소문자로 변환된 이 String 개체의 복사본을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifToString() String 의 이 인스턴스를 반환하며, 이때 실제 변환은 수행되지 않습니다. (Object.ToString()을(를) 재정의함)
Public 메서드XNA Framework에서 지원ToString(IFormatProvider) String 의 이 인스턴스를 반환하며, 이때 실제 변환은 수행되지 않습니다.
Public 메서드XNA Framework에서 지원ToUpper()이 문자열의 복사본을 대문자로 변환하여 반환합니다.
Public 메서드XNA Framework에서 지원ToUpper(CultureInfo)지정한 문화권의 대/소문자 규칙을 사용하여 대문자로 변환된 이 문자열의 복사본을 반환합니다.
Public 메서드s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifToUpperInvariant고정 문화권의 대/소문자 규칙을 사용하여 대문자로 변환된 이 String 개체의 복사본을 반환합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifTrim()현재 String 개체에서 선행 공백과 후행 공백을 모두 제거합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifTrim(Char[])현재 String 개체에서 배열에 지정된 문자 집합의 선행 항목과 후행 항목을 모두 제거합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifTrimEnd현재 String 개체에서 배열에 지정된 문자 집합의 후행 항목을 모두 제거합니다.
Public 메서드XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifTrimStart현재 String 개체에서 배열에 지정된 문자 집합의 선행 항목을 모두 제거합니다.
위쪽

  이름설명
Public 연산자정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEquality지정된 두 문자열의 값이 같은지 여부를 확인합니다.
Public 연산자정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifInequality지정된 두 문자열의 값이 다른지 여부를 확인합니다.
위쪽

  이름설명
Public 확장 메서드XNA Framework에서 지원Aggregate<Char>(Func<Char, Char, Char>)오버로드되었습니다. 시퀀스에 누적기 함수를 적용합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Aggregate<Char, TAccumulate>(TAccumulate, Func<TAccumulate, Char, TAccumulate>)오버로드되었습니다. 시퀀스에 누적기 함수를 적용합니다. 지정된 시드 값은 초기 누적기 값으로 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Aggregate<Char, TAccumulate, TResult>(TAccumulate, Func<TAccumulate, Char, TAccumulate>, Func<TAccumulate, TResult>)오버로드되었습니다. 시퀀스에 누적기 함수를 적용합니다. 지정된 시드 값은 초기 누적기 값으로 사용되고 지정된 함수는 결과 값을 선택하는 데 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원All<Char>시퀀스의 모든 요소가 특정 조건에 맞는지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Any<Char>()오버로드되었습니다. 시퀀스에 요소가 하나라도 있는지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Any<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에 특정 조건에 맞는 요소가 있는지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원AsEnumerable<Char>입력을 IEnumerable<T>로 형식화하여 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드AsParallel()오버로드되었습니다. 쿼리를 병렬화할 수 있도록 합니다. (ParallelEnumerable에서 정의됨)
Public 확장 메서드AsParallel<Char>()오버로드되었습니다. 쿼리를 병렬화할 수 있도록 합니다. (ParallelEnumerable에서 정의됨)
Public 확장 메서드AsQueryable()오버로드되었습니다. IEnumerable IQueryable로 변환합니다. (Queryable에서 정의됨)
Public 확장 메서드AsQueryable<Char>()오버로드되었습니다. 제네릭 IEnumerable<T>을 제네릭 IQueryable<T>로 변환합니다. (Queryable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Int32>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Int32 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Nullable<Int32>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Int32 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Int64>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Int64 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Nullable<Int64>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Int64 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Single>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Single 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Nullable<Single>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Single 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Double>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Double 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Nullable<Double>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Double 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Decimal>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Decimal 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Average<Char>(Func<Char, Nullable<Decimal>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Decimal 값 시퀀스의 평균을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Cast<TResult> IEnumerable 의 요소를 지정된 형식으로 변환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Concat<Char>두 시퀀스를 연결합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Contains<Char>(Char)오버로드되었습니다. 기본 같음 비교자를 사용하여 시퀀스에 지정된 요소가 들어 있는지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Contains<Char>(Char, IEqualityComparer<Char>)오버로드되었습니다. 지정된 IEqualityComparer<T>를 사용하여 시퀀스에 지정된 요소가 들어 있는지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Count<Char>()오버로드되었습니다. 시퀀스의 요소 수를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Count<Char>(Func<Char, Boolean>)오버로드되었습니다. 지정된 시퀀스에서 특정 조건에 맞는 요소 수를 나타내는 숫자를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원DefaultIfEmpty<Char>()오버로드되었습니다. 지정된 시퀀스의 요소를 반환하거나, 시퀀스가 비어 있으면 형식 매개 변수의 기본값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원DefaultIfEmpty<Char>(Char)오버로드되었습니다. 지정된 시퀀스의 요소를 반환하거나, 시퀀스가 비어 있으면 singleton 컬렉션의 지정된 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Distinct<Char>()오버로드되었습니다. 기본 같음 비교자로 값을 비교하여 시퀀스에서 고유 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Distinct<Char>(IEqualityComparer<Char>)오버로드되었습니다. 지정된 IEqualityComparer<T>로 값을 비교하여 시퀀스에서 고유 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ElementAt<Char>시퀀스에서 지정된 인덱스의 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ElementAtOrDefault<Char>시퀀스에서 지정된 인덱스의 요소를 반환하거나, 인덱스가 범위를 벗어나면 기본 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Except<Char>(IEnumerable<Char>)오버로드되었습니다. 기본 같음 비교자로 값을 비교하여 두 시퀀스의 차집합을 구합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Except<Char>(IEnumerable<Char>, IEqualityComparer<Char>)오버로드되었습니다. 지정된 IEqualityComparer<T>로 값을 비교하여 두 시퀀스의 차집합을 구합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원First<Char>()오버로드되었습니다. 시퀀스의 첫 번째 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원First<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 지정된 조건에 맞는 첫 번째 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원FirstOrDefault<Char>()오버로드되었습니다. 시퀀스의 첫 번째 요소를 반환하거나, 시퀀스에 요소가 없으면 기본값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원FirstOrDefault<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 특정 조건에 맞는 첫 번째 요소를 반환하거나, 이러한 요소가 없으면 기본값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey>(Func<Char, TKey>)오버로드되었습니다. 지정된 키 선택기 함수에 따라 시퀀스의 요소를 그룹화합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey>(Func<Char, TKey>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 선택기 함수에 따라 지정된 비교자로 키를 비교하여 시퀀스의 요소를 그룹화합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey, TElement>(Func<Char, TKey>, Func<Char, TElement>)오버로드되었습니다. 지정된 키 선택기 함수에 따라 시퀀스의 요소를 그룹화하고 지정된 함수를 사용하여 각 그룹의 요소를 투영합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey, TResult>(Func<Char, TKey>, Func<TKey, IEnumerable<Char>, TResult>)오버로드되었습니다. 지정된 키 누적기 함수에 따라 시퀀스의 요소를 그룹화하고 각 그룹의 결과 값과 해당 키를 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey, TElement>(Func<Char, TKey>, Func<Char, TElement>, IEqualityComparer<TKey>)오버로드되었습니다. 키 선택기 함수에 따라 시퀀스의 요소를 그룹화합니다. 키는 비교자를 통해 비교되고 각 그룹의 요소는 지정된 함수를 통해 투영됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey, TResult>(Func<Char, TKey>, Func<TKey, IEnumerable<Char>, TResult>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 누적기 함수에 따라 시퀀스의 요소를 그룹화하고 각 그룹의 결과 값과 해당 키를 만듭니다. 키는 지정된 비교자를 통해 비교됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey, TElement, TResult>(Func<Char, TKey>, Func<Char, TElement>, Func<TKey, IEnumerable<TElement>, TResult>)오버로드되었습니다. 지정된 키 누적기 함수에 따라 시퀀스의 요소를 그룹화하고 각 그룹의 결과 값과 해당 키를 만듭니다. 각 그룹의 요소는 지정된 함수를 통해 투영됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupBy<Char, TKey, TElement, TResult>(Func<Char, TKey>, Func<Char, TElement>, Func<TKey, IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 누적기 함수에 따라 시퀀스의 요소를 그룹화하고 각 그룹의 결과 값과 해당 키를 만듭니다. 키 값은 지정된 비교자를 통해 비교되고 각 그룹의 요소는 지정된 함수를 통해 투영됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupJoin<Char, TInner, TKey, TResult>(IEnumerable<TInner>, Func<Char, TKey>, Func<TInner, TKey>, Func<Char, IEnumerable<TInner>, TResult>)오버로드되었습니다. 키가 같은지 여부에 따라 두 시퀀스의 요소를 연관시키고 결과를 그룹화합니다. 기본 같음 비교자를 사용하여 키를 비교합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원GroupJoin<Char, TInner, TKey, TResult>(IEnumerable<TInner>, Func<Char, TKey>, Func<TInner, TKey>, Func<Char, IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)오버로드되었습니다. 키가 같은지 여부에 따라 두 시퀀스의 요소를 연관시키고 결과를 그룹화합니다. 지정된 IEqualityComparer<T>를 사용하여 키를 비교합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Intersect<Char>(IEnumerable<Char>)오버로드되었습니다. 기본 같음 비교자로 값을 비교하여 두 시퀀스의 교집합을 구합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Intersect<Char>(IEnumerable<Char>, IEqualityComparer<Char>)오버로드되었습니다. 지정된 IEqualityComparer<T>로 값을 비교하여 두 시퀀스의 교집합을 구합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Join<Char, TInner, TKey, TResult>(IEnumerable<TInner>, Func<Char, TKey>, Func<TInner, TKey>, Func<Char, TInner, TResult>)오버로드되었습니다. 일치하는 키를 기준으로 두 시퀀스의 요소를 연관시킵니다. 기본 같음 비교자를 사용하여 키를 비교합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Join<Char, TInner, TKey, TResult>(IEnumerable<TInner>, Func<Char, TKey>, Func<TInner, TKey>, Func<Char, TInner, TResult>, IEqualityComparer<TKey>)오버로드되었습니다. 일치하는 키를 기준으로 두 시퀀스의 요소를 연관시킵니다. 지정된 IEqualityComparer<T>를 사용하여 키를 비교합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Last<Char>()오버로드되었습니다. 시퀀스의 마지막 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Last<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 지정된 조건에 맞는 마지막 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원LastOrDefault<Char>()오버로드되었습니다. 시퀀스의 마지막 요소를 반환하거나, 시퀀스에 요소가 없으면 기본값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원LastOrDefault<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 특정 조건에 맞는 마지막 요소를 반환하거나, 이러한 요소가 없으면 기본값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원LongCount<Char>()오버로드되었습니다. 시퀀스의 총 요소 수를 나타내는 Int64를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원LongCount<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 특정 조건에 맞는 요소 수를 나타내는 Int64를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>()오버로드되었습니다. 제네릭 시퀀스의 최대값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Int32>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 Int32 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Nullable<Int32>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 nullable Int32 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Int64>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 Int64 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Nullable<Int64>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 nullable Int64 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Single>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 Single 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Nullable<Single>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 nullable Single 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Double>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 Double 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Nullable<Double>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 nullable Double 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Decimal>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 Decimal 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char>(Func<Char, Nullable<Decimal>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 nullable Decimal 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Max<Char, TResult>(Func<Char, TResult>)오버로드되었습니다. 제네릭 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최대 결과 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>()오버로드되었습니다. 제네릭 시퀀스의 최소값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Int32>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 Int32 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Nullable<Int32>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 nullable Int32 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Int64>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 Int64 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Nullable<Int64>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 nullable Int64 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Single>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 Single 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Nullable<Single>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 nullable Single 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Double>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 Double 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Nullable<Double>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 nullable Double 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Decimal>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 Decimal 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char>(Func<Char, Nullable<Decimal>>)오버로드되었습니다. 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 nullable Decimal 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Min<Char, TResult>(Func<Char, TResult>)오버로드되었습니다. 제네릭 시퀀스의 각 요소에 대해 변환 함수를 호출하고 최소 결과 값을 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원OfType<TResult>지정된 형식에 따라 IEnumerable의 요소를 필터링합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원OrderBy<Char, TKey>(Func<Char, TKey>)오버로드되었습니다. 시퀀스의 요소를 키에 따라 오름차순으로 정렬합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원OrderBy<Char, TKey>(Func<Char, TKey>, IComparer<TKey>)오버로드되었습니다. 지정된 비교자를 사용하여 시퀀스의 요소를 오름차순으로 정렬합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원OrderByDescending<Char, TKey>(Func<Char, TKey>)오버로드되었습니다. 시퀀스의 요소를 키에 따라 내림차순으로 정렬합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원OrderByDescending<Char, TKey>(Func<Char, TKey>, IComparer<TKey>)오버로드되었습니다. 지정된 비교자를 사용하여 시퀀스의 요소를 내림차순으로 정렬합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Reverse<Char>시퀀스의 요소 순서를 반전합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Select<Char, TResult>(Func<Char, TResult>)오버로드되었습니다. 시퀀스의 각 요소를 새 폼에 투영합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Select<Char, TResult>(Func<Char, Int32, TResult>)오버로드되었습니다. 요소의 인덱스를 통합하여 시퀀스의 각 요소를 새 폼에 투영합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SelectMany<Char, TResult>(Func<Char, IEnumerable<TResult>>)오버로드되었습니다. 시퀀스의 각 요소를 IEnumerable<T>에 투영하고 결과 시퀀스를 단일 시퀀스로 평면화합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SelectMany<Char, TResult>(Func<Char, Int32, IEnumerable<TResult>>)오버로드되었습니다. 시퀀스의 각 요소를 IEnumerable<T>에 투영하고 결과 시퀀스를 단일 시퀀스로 평면화합니다. 각 소스 요소의 인덱스는 해당 요소의 투영된 폼에 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SelectMany<Char, TCollection, TResult>(Func<Char, Int32, IEnumerable<TCollection>>, Func<Char, TCollection, TResult>)오버로드되었습니다. 시퀀스의 각 요소를 IEnumerable<T>로 투영하고, 결과 시퀀스를 단일 시퀀스로 평면화한 다음 포함된 각 요소에 대해 결과 선택기 함수를 호출합니다. 각 소스 요소의 인덱스는 해당 요소의 투영된 중간 폼에 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SelectMany<Char, TCollection, TResult>(Func<Char, IEnumerable<TCollection>>, Func<Char, TCollection, TResult>)오버로드되었습니다. 시퀀스의 각 요소를 IEnumerable<T>로 투영하고, 결과 시퀀스를 단일 시퀀스로 평면화한 다음 포함된 각 요소에 대해 결과 선택기 함수를 호출합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SequenceEqual<Char>(IEnumerable<Char>)오버로드되었습니다. 해당 형식에 대한 기본 같음 비교자를 통해 요소를 비교하여 두 시퀀스가 서로 같은지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SequenceEqual<Char>(IEnumerable<Char>, IEqualityComparer<Char>)오버로드되었습니다. 지정된 IEqualityComparer<T>를 통해 요소를 비교하여 두 시퀀스가 서로 같은지 확인합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Single<Char>()오버로드되었습니다. 시퀀스의 유일한 요소를 반환하고, 시퀀스에 요소가 정확히 하나 들어 있지 않으면 예외를 throw합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Single<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 지정된 조건에 맞는 유일한 요소를 반환하고, 이러한 요소가 둘 이상 있으면 예외를 throw합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SingleOrDefault<Char>()오버로드되었습니다. 시퀀스의 유일한 요소를 반환하거나 시퀀스가 비어 있으면 기본값을 반환합니다. 시퀀스에 요소가 둘 이상 있으면 예외를 throw합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SingleOrDefault<Char>(Func<Char, Boolean>)오버로드되었습니다. 시퀀스에서 지정된 조건에 맞는 유일한 요소를 반환하거나 이러한 요소가 없으면 기본값을 반환합니다. 조건에 맞는 요소가 둘 이상 있으면 예외를 throw합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Skip<Char>시퀀스에서 지정된 수의 요소를 건너뛴 다음 나머지 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SkipWhile<Char>(Func<Char, Boolean>)오버로드되었습니다. 지정된 조건이 true이면 시퀀스에 있는 요소를 무시하고 나머지 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원SkipWhile<Char>(Func<Char, Int32, Boolean>)오버로드되었습니다. 지정된 조건이 true이면 시퀀스에 있는 요소를 무시하고 나머지 요소를 반환합니다. 조건자 함수의 논리에 요소의 인덱스가 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Int32>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Int32 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Nullable<Int32>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Int32 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Int64>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Int64 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Nullable<Int64>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Int64 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Single>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Single 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Nullable<Single>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Single 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Double>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Double 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Nullable<Double>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Double 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Decimal>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 Decimal 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Sum<Char>(Func<Char, Nullable<Decimal>>)오버로드되었습니다. 입력 시퀀스의 각 요소에 대해 변환 함수를 호출하여 가져온 nullable Decimal 값 시퀀스의 합을 계산합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Take<Char>시퀀스 시작 위치에서 지정된 수의 연속 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원TakeWhile<Char>(Func<Char, Boolean>)오버로드되었습니다. 지정된 조건이 true인 동안 시퀀스에서 요소를 반환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원TakeWhile<Char>(Func<Char, Int32, Boolean>)오버로드되었습니다. 지정된 조건이 true인 동안 시퀀스에서 요소를 반환합니다. 조건자 함수의 논리에 요소의 인덱스가 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToArray<Char> IEnumerable<T> 을 사용하여 배열을 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToDictionary<Char, TKey>(Func<Char, TKey>)오버로드되었습니다. 지정된 키 선택기 함수에 따라 IEnumerable<T>을 사용하여 Dictionary<TKey, TValue>를 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToDictionary<Char, TKey>(Func<Char, TKey>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 선택기 함수와 키 비교자에 따라 IEnumerable<T>을 사용하여 Dictionary<TKey, TValue>를 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToDictionary<Char, TKey, TElement>(Func<Char, TKey>, Func<Char, TElement>)오버로드되었습니다. 지정된 키 선택기와 요소 선택기 함수에 따라 IEnumerable<T>을 사용하여 Dictionary<TKey, TValue>를 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToDictionary<Char, TKey, TElement>(Func<Char, TKey>, Func<Char, TElement>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 선택기 함수, 비교자 및 요소 선택기 함수에 따라 IEnumerable<T>을 사용하여 Dictionary<TKey, TValue>를 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToList<Char> IEnumerable<T> 을 사용하여 List<T>를 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToLookup<Char, TKey>(Func<Char, TKey>)오버로드되었습니다. 지정된 키 선택기 함수에 따라 IEnumerable<T>을 사용하여 Lookup<TKey, TElement>을 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToLookup<Char, TKey>(Func<Char, TKey>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 선택기 함수와 키 비교자에 따라 IEnumerable<T>을 사용하여 Lookup<TKey, TElement>을 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToLookup<Char, TKey, TElement>(Func<Char, TKey>, Func<Char, TElement>)오버로드되었습니다. 지정된 키 선택기와 요소 선택기 함수에 따라 IEnumerable<T>을 사용하여 Lookup<TKey, TElement>을 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원ToLookup<Char, TKey, TElement>(Func<Char, TKey>, Func<Char, TElement>, IEqualityComparer<TKey>)오버로드되었습니다. 지정된 키 선택기 함수, 비교자 및 요소 선택기 함수에 따라 IEnumerable<T>을 사용하여 Lookup<TKey, TElement>을 만듭니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Union<Char>(IEnumerable<Char>)오버로드되었습니다. 기본 같음 비교자를 사용하여 두 시퀀스의 합집합을 구합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Union<Char>(IEnumerable<Char>, IEqualityComparer<Char>)오버로드되었습니다. 지정된 IEqualityComparer<T>를 사용하여 두 시퀀스의 합집합을 구합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Where<Char>(Func<Char, Boolean>)오버로드되었습니다. 조건자에 따라 값의 시퀀스를 필터링합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Where<Char>(Func<Char, Int32, Boolean>)오버로드되었습니다. 조건자에 따라 값의 시퀀스를 필터링합니다. 조건자 함수의 논리에 각 요소의 인덱스가 사용됩니다. (Enumerable에서 정의됨)
Public 확장 메서드Zip<Char, TSecond, TResult>지정된 조건자 함수를 사용하여 두 시퀀스를 병합합니다. (Enumerable에서 정의됨)
위쪽

  이름설명
Public 필드정적 멤버XNA Framework에서 지원s1wwdcbf.PortableClassLibrary(ko-kr,VS.100).gifEmpty빈 문자열을 나타냅니다. 이 필드는 읽기 전용입니다.
위쪽

  이름설명
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToBoolean인프라입니다. 이 멤버에 대한 설명은 ToBoolean을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToByte인프라입니다. 이 멤버에 대한 설명은 ToByte를 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToChar인프라입니다. 이 멤버에 대한 설명은 ToChar을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToDateTime인프라입니다. 이 멤버에 대한 설명은 ToDateTime을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToDecimal인프라입니다. 이 멤버에 대한 설명은 ToDecimal을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToDouble인프라입니다. 이 멤버에 대한 설명은 ToDouble을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToInt16인프라입니다. 이 멤버에 대한 설명은 ToInt16을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToInt32인프라입니다. 이 멤버에 대한 설명은 ToInt32를 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToInt64인프라입니다. 이 멤버에 대한 설명은 ToInt64를 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToSByte인프라입니다. 이 멤버에 대한 설명은 ToSByte를 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToSingle인프라입니다. 이 멤버에 대한 설명은 ToSingle을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToType인프라입니다. 이 멤버에 대한 설명은 ToType을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToUInt16인프라입니다. 이 멤버에 대한 설명은 ToUInt16을 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToUInt32인프라입니다. 이 멤버에 대한 설명은 ToUInt32를 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IConvertible.ToUInt64인프라입니다. 이 멤버에 대한 설명은 ToUInt64를 참조하십시오.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IEnumerable<Char>.GetEnumerator현재 String 개체를 반복하는 열거자를 반환합니다.
명시적 인터페이스 구현Private 메서드XNA Framework에서 지원IEnumerable.GetEnumerator현재 String 개체를 반복하는 열거자를 반환합니다.
위쪽

문자열은 텍스트를 나타내는 데 사용되는 유니코드 문자의 순차적인 컬렉션입니다. String 개체는 문자열을 나타내는 System.Char 개체의 순차적인 컬렉션입니다. String 개체의 값은 순차적인 컬렉션의 내용이며 읽기 전용으로 변경할 수 없습니다. 문자열의 불면성에 대한 자세한 내용은 불면성과 StringBuilder 클래스 단원을 참조하십시오.

문자열 개체 인스턴스화

다음 방법을 사용하여 String 개체를 인스턴스화할 수 있습니다.

  • 문자열 리터럴을 String 변수에 할당합니다. 이것은 문자열을 만들기 위해 가장 일반적으로 사용되는 메서드입니다. 다음 예제에서는 할당을 사용하여 여러 문자열을 만듭니다. C#에서 백슬래시(\)는 이스케이프 문자이므로 문자열의 리터럴 백슬래시를 이스케이프하거나 전체 문자열을 @로 묶어야 합니다.

    
    string string1 = "This is a string created by assignment.";
    Console.WriteLine(string1);
    string string2a = "The path is C:\\PublicDocuments\\Report1.doc";
    Console.WriteLine(string2a);
    string string2b = @"The path is C:\PublicDocuments\Report1.doc";
    Console.WriteLine(string2b);
    // The example displays the following output:
    //       This is a string created by assignment.
    //       The path is C:\PublicDocuments\Report1.doc
    //       The path is C:\PublicDocuments\Report1.doc      
    
    
    
  • String 생성자를 호출합니다. 다음 예제에서는 여러 클래스 생성자를 호출하여 문자열을 인스턴스화합니다. 일부 생성자는 문자 배열에 대한 포인터 또는 부호 있는 바이트 배열을 매개 변수로 포함합니다. Visual Basic에서는 이러한 생성자에 대한 호출은 지원하지 않습니다.

    
    char[] chars = { 'w', 'o', 'r', 'd' };
    sbyte[] bytes = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x00 };
    
    // Create a string from a character array.
    string string1 = new string(chars);
    Console.WriteLine(string1);
    
    // Create a string that consists of a character repeated 20 times.
    string string2 = new string('c', 20);
    Console.WriteLine(string2);
    
    string stringFromBytes = null;
    string stringFromChars = null;
    unsafe
    {
       fixed (sbyte* pbytes = bytes)
       {
          // Create a string from a pointer to a signed byte array.
          stringFromBytes = new string(pbytes);
       }
       fixed (char* pchars = chars)
       {
          // Create a string from a pointer to a character array.
          stringFromChars = new string(pchars);
       }
    }
    Console.WriteLine(stringFromBytes);
    Console.WriteLine(stringFromChars);
    // The example displays the following output:
    //       word
    //       cccccccccccccccccccc
    //       ABCDE
    //       word  
    
    
    
  • 문자열 연결 연산자(C#의 경우 +, Visual Basic의 경우 & 또는 +)를 사용하여 String 인스턴스와 문자열 리터럴의 임의 조합에서 단일 문자열을 만들 수 있습니다. 다음 예제에서는 문자열 연결 연산자의 사용법을 보여 줍니다.

    
    string string1 = "Today is " + DateTime.Now.ToString("D") + ".";
    Console.WriteLine(string1);
    
    string string2 = "This is one sentence. " + "This is a second. ";
    string2 += "This is a third sentence.";
    Console.WriteLine(string2);
    // The example displays output like the following:
    //    Today is Tuesday, July 06, 2011.
    //    This is one sentence. This is a second. This is a third sentence.
    
    
    
  • 속성을 검색하거나 문자열을 반환하는 메서드를 호출합니다. 다음 예제에서는 String 클래스의 메서드를 사용하여 큰 문자열에서 부분 문자열을 추출합니다.

    
    string sentence = "This sentence has five words.";
    // Extract the second word.
    int startPosition = sentence.IndexOf(" ") + 1;
    string word2 = sentence.Substring(startPosition,
                                      sentence.IndexOf(" ", startPosition) - startPosition);
    Console.WriteLine("Second word: " + word2);
    // The example displays the following output:
    //       Second word: sentence
    
    
    
  • 형식 지정 메서드를 호출하여 값 또는 개체를 문자열 표현으로 변환합니다. 다음 예제에서는 합성 형식 지정 기능을 사용하여 두 개체의 문자열 표현을 하나의 문자열에 포함시킵니다.

    
    DateTime dateAndTime = new DateTime(2011, 7, 6, 7, 32, 0);
    double temperature = 68.3;
    string result = String.Format("At {0:t} on {0:D}, the temperature was {1:F1} degrees Fahrenheit.",
                                  dateAndTime, temperature);
    Console.WriteLine(result);
    // The example displays the following output:
    //       At 7:32 AM on Wednesday, July 06, 2011, the temperature was 68.3 degrees Fahrenheit.      
    
    
    

성명으로 이동

Char 개체 및 유니코드 문자

문자열에 있는 각각의 유니코드 문자는 유니코드 스칼라 반환으로 정의됩니다. 유니코드 스칼라 반환은 유니코드 문자의 서수(숫자) 값 또는 유니코드 코드 포인트라고도 합니다. 각 코드 포인트는 UTF-16 인코딩을 사용하여 인코딩되고 인코딩 각 요소의 숫자 값은 Char 개체로 표시됩니다.

단일 Char 개체는 일반적으로 단일 코드 포인트를 나타냅니다. 즉, Char의 숫자 값은 코드 포인트와 같습니다. 예를 들어, 문자 "a"의 코드 포인트는 U+0061입니다. 그러나 코드 포인트에는 두 개 이상의 인코딩된 요소(둘 이상의 Char 개체)가 필요할 수 있습니다. 유니코드 표준은 여러 개의 Char 개체: 제자, 유니코드 보충 코드 포인트 및 보충 평면의 문자에 해당하는 세 가지 형식의 문자를 정의합니다.

  • 단일 문자는 하나 이상의 결함 문자로 이어지는 기본 문자로 표현됩니다. 예를 들어, 문자 ä는 코드 포인트가 U+0061이고 이어 코드 포인트가 +0308인 Char 개체는 Char로 표현됩니다. 이 문자는 코드 포인트가 U+00E4인 Char 개체로 정의할 수도 있습니다. 다음 예제와 같이, 문화권을 구분하는 같음 비교에서는 두 표현이 같다고 나타나지만 서수 비교에서는 다른 것으로 나타납니다. 그러나 두 문자열이 정규화되는 경우 서수 비교도 서로 동일하다는 것을 나타냅니다. 문자열을 정규화하는 자세한 내용은 Normalization 단원을 참조하십시오.

    
    using System;
    using System.Globalization;
    using System.IO;
    
    public class Example
    {
       public static void Main()
       {
          StreamWriter sw = new StreamWriter(@".\graphemes.txt");
          string grapheme = "\u0061\u0308";
          sw.WriteLine(grapheme);
    
          string singleChar = "\u00e4";
          sw.WriteLine(singleChar);
    
          sw.WriteLine("{0} = {1} (Culture-sensitive): {2}", grapheme, singleChar, 
                       String.Equals(grapheme, singleChar, 
                                     StringComparison.CurrentCulture));
          sw.WriteLine("{0} = {1} (Ordinal): {2}", grapheme, singleChar, 
                       String.Equals(grapheme, singleChar, 
                                     StringComparison.Ordinal));
          sw.WriteLine("{0} = {1} (Normalized Ordinal): {2}", grapheme, singleChar, 
                       String.Equals(grapheme.Normalize(), 
                                     singleChar.Normalize(), 
                                     StringComparison.Ordinal));
          sw.Close(); 
       }
    }
    // The example produces the following output:
    //       ä
    //       ä
    //       ä = ä (Culture-sensitive): True
    //       ä = ä (Ordinal): False
    //       ä = ä (Normalized Ordinal): True
    
    
    
  • 유니코드 보충 코드 포인트(서로게이트 쌍)는 코드 포인트가 상위 서로게이트인 Char 개체와 이어서 코드 포인트가 하위 서로게이트인 Char 개체로 나타냅니다. high surrogate의 코드 포인트 범위는 U+D800 ~ U+DBFF입니다. low surrogate의 코드 포인트 범위는 U+DC00 ~ U+DFFF입니다. 서로게이트 쌍은 16개 유니코드 보충 평면에서 문자를 나타내는 데 사용됩니다. 다음 예제에서는 서로게이트 문자를 만들고 Char.IsSurrogatePair(Char, Char) 메서드로 전달하여 서로게이트 쌍인지 여부를 확인합니다.

    
    using System;
    
    public class Example
    {
       public static void Main()
       {
          string surrogate = "\uD800\uDC03";
          for (int ctr = 0; ctr < surrogate.Length; ctr++) 
             Console.Write("U+{0:X2} ", Convert.ToUInt16(surrogate[ctr]));
    
          Console.WriteLine();
          Console.WriteLine("   Is Surrogate Pair: {0}", 
                            Char.IsSurrogatePair(surrogate[0], surrogate[1]));
       }
    }
    // The example displays the following output:
    //       U+D800 U+DC03
    //          Is Surrogate Pair: True
    
    
    

성명으로 이동

문자열 및 포함된 Null 문자

.NET Framework에서는 String 개체에 null 문자가 포함될 수 있으며, null은 문자열 길이에 포함되어 계산됩니다. 그러나 C 및 C++ 등의 일부 언어에서는 null 문자가 문자열의 끝을 나타내며 문자열의 일부로 간주되지 않고 문자열 길이에 포함되어 계산되지 않습니다. 즉, C 및 C++ 프로그래머가 공통적으로 가정하거나 C 또는 C++로 작성된 라이브러리에서 전제하는 다음과 같은 사항이 String 개체에는 적용되지 않을 수 있습니다.

  • strlen 또는 wcslen 함수에서 반환하는 값이 String.Length와 같지 않을 수도 있습니다.

  • strcpy_s 또는 wcscpy_s 함수로 만든 문자열이 String.Copy 메서드로 만든 문자열과 일치하지 않을 수도 있습니다.

String 개체를 인스턴스화하는 네이티브 C와 C++ 코드 및 플랫폼 호출을 통해 String 개체를 전달받는 코드에서는 포함된 null 문자가 문자열 끝을 표시한다고 가정하지 않습니다.

또한 문자열에 포함된 Null 문자는 문자열을 정렬(또는 비교)할 때와 문자열을 검색할 때 다르게 처리됩니다. 고정 문화권을 사용한 비교를 포함하여 두 문자열 사이의 문화권 구분 비교를 수행할 때 Null 문자는 무시됩니다. 서수 또는 대/소문자를 구분하지 않는 서수 비교에 대해서만 고려됩니다. 반면에 Contains, StartsWithIndexOf 같은 메서드에서 문자열을 검색할 때 포함된 null 문자를 항상 고려합니다.

성명으로 이동

문자열 및 인덱스

인덱스는 String에 있는 유니코드 문자가 아니라 Char 개체의 위치입니다. 인덱스는 0부터 시작하는 음수가 아닌 수이며 인덱스 위치가 0인 문자열의 첫 위치부터 시작됩니다. IndexOf , LastIndexOf와 같은 여러 검색 방법이 스트링 인스턴스에 부분 문자열 또는 문자의 인덱스를 반환합니다.

Chars 속성을 사용하면 문자열에서 인덱스 위치에 의해 개별 Char 개체에 액세스할 수 있습니다. Chars 속성은 기본 속성(Visual Basic의 경우) 또는 인덱서(C#의 경우)이므로 다음과 같은 코드를 사용하여 문자열의 개별 Char 개체에 액세스할 수 있습니다. 이 코드는 문자열에서 공백 또는 구두점 문자를 찾아 문자열에 포함된 단어 수를 결정합니다.


using System;

public class Example
{
   public static void Main()
   {
      string s1 = "This string consists of a single short sentence.";
      int nWords = 0;

      s1 = s1.Trim();      
      for (int ctr = 0; ctr < s1.Length; ctr++) {
         if (Char.IsPunctuation(s1[ctr]) | Char.IsWhiteSpace(s1[ctr]))
            nWords++;              
      }
      Console.WriteLine("The sentence\n   {0}\nhas {1} words.",
                        s1, nWords);                                                                     
   }
}
// The example displays the following output:
//       The sentence
//          This string consists of a single short sentence.
//       has 8 words.


String 클래스는 IEnumerable 인터페이스를 구현하므로 다음 예제와 같이 foreach 생성자를 사용하여 문자열의 Char 개체를 통해 반복할 수도 있습니다.


using System;

public class Example
{
   public static void Main()
   {
      string s1 = "This string consists of a single short sentence.";
      int nWords = 0;

      s1 = s1.Trim();      
      foreach (var ch in s1) {
         if (Char.IsPunctuation(ch) | Char.IsWhiteSpace(ch))
            nWords++;              
      }
      Console.WriteLine("The sentence\n   {0}\nhas {1} words.",
                        s1, nWords);                                                                     
   }
}
// The example displays the following output:
//       The sentence
//          This string consists of a single short sentence.
//       has 8 words.


연속된 인덱스 값은 유니코드 문자가 두 개 이상의 Char 개체로 인코딩될 수 있기 때문에 연속된 유니코드 문자와 일치하지 않을 수도 있습니다. Char 개체 대신 유니코드 문자로 작업하려면 System.Globalization.StringInfoTextElementEnumerator 클래스를 사용합니다. 다음 예제에서는 Char 개체를 사용하는 코드와 유니코드 문자를 사용하는 코드 간 차이를 보여 줍니다. 문장의 각 단어에서 문자 수 또는 텍스트 요소를 비교합니다. 문자열에는 기본 문자와 조합 문자의 두 시퀀스가 포함되어 있습니다.


using System;
using System.Collections.Generic;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      // First sentence of The Mystery of the Yellow Room, by Leroux.
      string opening = "Ce n'est pas sans une certaine émotion que "+
                       "je commence à raconter ici les aventures " +
                       "extraordinaires de Joseph Rouletabille."; 
      // Character counters.
      int nChars = 0;
      // Objects to store word count.
      List<int> chars = new List<int>();
      List<int> elements = new List<int>();

      foreach (var ch in opening) {
         // Skip the ' character.
         if (ch == '\u0027') continue;

         if (Char.IsWhiteSpace(ch) | (Char.IsPunctuation(ch))) {
            chars.Add(nChars);
            nChars = 0;
         }
         else {
            nChars++;
         }
      }

      TextElementEnumerator te = StringInfo.GetTextElementEnumerator(opening);
      while (te.MoveNext()) {
         string s = te.GetTextElement();   
         // Skip the ' character.
         if (s == "\u0027") continue;
         if ( String.IsNullOrEmpty(s.Trim()) | (s.Length == 1 && Char.IsPunctuation(Convert.ToChar(s)))) {
            elements.Add(nChars);         
            nChars = 0;
         }
         else {
            nChars++;
         }
      }

      // Display character counts.
      Console.WriteLine("{0,6} {1,20} {2,20}",
                        "Word #", "Char Objects", "Characters"); 
      for (int ctr = 0; ctr < chars.Count; ctr++) 
         Console.WriteLine("{0,6} {1,20} {2,20}",
                           ctr, chars[ctr], elements[ctr]); 
   }
}
// The example displays the following output:
//       Word #         Char Objects           Characters
//            0                    2                    2
//            1                    4                    4
//            2                    3                    3
//            3                    4                    4
//            4                    3                    3
//            5                    8                    8
//            6                    8                    7
//            7                    3                    3
//            8                    2                    2
//            9                    8                    8
//           10                    2                    1
//           11                    8                    8
//           12                    3                    3
//           13                    3                    3
//           14                    9                    9
//           15                   15                   15
//           16                    2                    2
//           17                    6                    6
//           18                   12                   12


성명으로 이동

Null 문자열 및 빈 문자열

선언되었지만 값이 할당되지 않은 문자열은 null입니다. 해당 문자열에서 메서드를 호출하려고 시도하면 NullReferenceException이 throw됩니다. Null 문자열은 값이 """ 또는 String.Empty인 빈 문자열과 다릅니다. Null 문자열 또는 빈 문자열을 메서드 호출의 인수로 전달하면 예외가 throw되는 경우가 있습니다. 예를 들어, Int32.Parse 메서드에 Null 문자열을 전달하면 ArgumentNullException이 throw되고 빈 문자열을 전달하면 FormatException이 throw됩니다. 다른 경우 메서드 인수는 null 문자열 또는 빈 문자열이 될 수 있습니다. 예를 들어, 클래스에 대한 IFormattable 구현을 제공하는 경우 Null 문자열과 빈 문자열 둘 다를 일반("G") 형식 지정자와 동일 시 하려고 합니다.

String 클래스는 문자열이 null 또는 비어 있는지를 테스트할 수 있는 다음 두 가지 편리한 메서드를 포함합니다.

  • 문자열이 null인지 또는 String.Empty와 같은지를 나타내는 IsNullOrEmpty입니다. 이 메서드는 다음과 같은 코드를 사용할 필요성을 제거합니다.

    
    if (str == null || str.Equals(String.Empty))
    
    
    
  • 문자열이 null인지, String.Empty와 같은지 또는 공백 문자로만 구성되어 있는지를 나타내는 IsNullOrWhiteSpace입니다. 이 메서드는 다음과 같은 코드를 사용할 필요성을 제거합니다.

    
    if (str == null || str.Equals(String.Empty) || str.Trim().Equals(String.Empty))
    
    
    

다음 예제에서는 사용자 지정 Temperature 클래스의 IFormattable.ToString 구현에서 IsNullOrEmpty 메서드를 사용합니다. 메서드는 "G", "C", "F" 및 "K" 형식 문자열을 지원합니다. 빈 서식 문자열 또는 값이 null인 서식 문자열이 메서드로 전달되는 경우 해당 값은 "G" 서식 문자열로 변경됩니다.


public string ToString(string format, IFormatProvider provider) 
{
   if (String.IsNullOrEmpty(format)) format = "G";  
   if (provider == null) provider = CultureInfo.CurrentCulture;

   switch (format.ToUpperInvariant())
   {
      // Return degrees in Celsius.    
      case "G":
      case "C":
         return temp.ToString("F2", provider) + "°C";
      // Return degrees in Fahrenheit.
      case "F": 
         return (temp * 9 / 5 + 32).ToString("F2", provider) + "°F";
      // Return degrees in Kelvin.
      case "K":   
         return (temp + 273.15).ToString();
      default:
         throw new FormatException(
               String.Format("The {0} format string is not supported.", 
                             format));
   }                                   
}


성명으로 이동

불면성과 StringBuilder 클래스

String 개체는 일단 만들어지면 값을 수정할 수 없으므로 변경 불가능(읽기 전용)이라고 합니다. String 개체를 수정하는 것처럼 보이는 메서드는 실제로는 해당 수정 사항을 포함하는 새 String 개체를 반환합니다.

문자열은 변경할 수 없으므로 단일 문자열로 보이는 문자열에 대해 반복적 추가 또는 삭제를 수행하는 문자열 조작 루틴은 성능을 크게 저하시킬 수 있습니다. 예를 들어, 다음 코드는 난수 생성기를 사용하여 0x0001 ~ 0x052F 범위에 1000 문자의 문자열을 생성합니다. 코드에서 문자열 연결을 사용하여 str라는 기존 문자열에 새 문자를 추가하는 것처럼 보이지만, 실제로는 각 연결 작업에 대해 새 String 개체를 생성하는 것입니다.


using System;
using System.IO;
using System.Text;

public class Example
{
   public static void Main()
   {
      Random rnd = new Random();

      string str = String.Empty;
      StreamWriter sw = new StreamWriter(@".\StringFile.txt", 
                           false, Encoding.Unicode);

      for (int ctr = 0; ctr <= 1000; ctr++) {
         str += Convert.ToChar(rnd.Next(1, 0x0530)); 
         if (str.Length % 60 == 0)
            str += Environment.NewLine;          
      }                    
      sw.Write(str);
      sw.Close();
   }
}


문자열의 값을 여러 번 변경하는 작업의 경우 String 클래스 대신 StringBuilder 클래스를 사용할 수 있습니다. String 클래스의 인스턴스와 달리 StringBuilder 개체는 변경 가능하며 문자열에서 부분 문자열을 연결, 추가 또는 삭제할 때 작업은 단일 문자열에서 수행됩니다. StringBuilder 개체의 값을 수정했으면 StringBuilder.ToString 메서드를 호출하여 문자열로 변환할 수 있습니다. 다음 예제에서는 이전 예제에서 0x0001 ~ 0x052F 범위의 1000개의 임의 문자를 연결하는 데 사용된 StringStringBuilder 개체로 대체합니다.


using System;
using System.IO;
using System.Text;

public class Example
{
   public static void Main()
   {
      Random rnd = new Random();
      StringBuilder sb = new StringBuilder();
      StreamWriter sw = new StreamWriter(@".\StringFile.txt", 
                                         false, Encoding.Unicode);

      for (int ctr = 0; ctr <= 1000; ctr++) {
         sb.Append(Convert.ToChar(rnd.Next(1, 0x0530))); 
         if (sb.Length % 60 == 0)
            sb.AppendLine();          
      }                    
      sw.Write(sb.ToString());
      sw.Close();
   }
}


성명으로 이동

서수 및문화권 구분 작업

String 클래스의 멤버는 String 개체에서 서수 또는 문화권 구분(언어) 연산을 수행합니다. 서수적 연산은 Char 개체 각각의 숫자 값에 수행됩니다. 문화적 구분 연산은 문화권별 캐스팅, 정렬, 형식 지정 및 구문 분석 규칙을 고려하여 String 개체의 값에서 수행됩니다. 문화권 구분 작업은 명시적으로 선언된 문화권 또는 암시적인 현재 문화권의 컨텍스트에서 수행됩니다. 같은 문자열에서 수행하면 두 종류의 작업이 매우 다른 결과를 생성할 수 있습니다.

보안 정보보안 정보

응용 프로그램에서 파일 이름 또는 명명된 파이프 같은 기호 식별자나 XML 파일의 텍스트 기반 데이터 같은 보관된 데이터에 대한 보안을 결정할 경우, 해당 작업에서는 문화권 구분 비교 대신 서수 비교를 사용해야 합니다. 문화권 구분 비교에서는 적용된 문화권에 따라 다른 결과가 생성될 수 있는 반면, 서수 비교에서는 비교되는 문자의 이진 값에 따라서만 결과가 결정되기 때문입니다.

중요중요

문자열 작업을 수행하는 대부분의 메서드에는 메서드가 서수 또는 문화권 구분 작업을 수행하는지를 지정할 수 있는 StringComparison 형식의 매개 변수를 가진 오버로드가 포함되어 있습니다. 일반적으로, 메서드 호출을 분명하게 하려면 이 오버로드를 호출해야 합니다. 문자열에 서수 및 문화권 구분 작업 사용에 대한 모범 사례와 지침은 .NET Framework에서 문자열 사용에 대한 유용한 정보를 참조하십시오.

casing , parsing and formatting, comparison and sortingtesting for equality에 대한 작업은 서수이거나 문화권을 구분할 수 있습니다. 다음 단원에서는 작업의 각 범주를 설명합니다.

대/소문자 구분

대/소문자 규칙에서는 소문자를 대문자로 변경하는 방법과 같이 유니코드 문자의 대문자 표시 변경 방법을 결정합니다. 종종, 대/소문자 구분 작업은 문자열 비교 전에 수행됩니다. 예를 들어, 문자열을 다른 대문자 문자열과 비교할 수 있도록 대문자로 변환할 수 있습니다. ToLower 또는 ToLowerInvariant 메서드를 호출하여 문자열을 대문자로 변환하거나 ToUpper 또는 ToUpperInvariant 메서드를 호출하여 대문자로 변환할 수 있습니다. 뿐만 아니라 TextInfo.ToTitleCase 메서드를 사용하여 문자열을 제목 대/소문자로 변환할 수 있습니다.

대/소문자 구분 작업은 현재 문화권, 지정된 문화권 또는 고정 문화권의 규칙을 기초로 할 수 있습니다. 다음은 예제에서는 문자열을 대문자로 변환할 때 문화권 간 대/소문자 구분 규칙의 몇 가지 차이점을 보여 줍니다.


using System;
using System.Globalization;
using System.IO;

public class Example
{
   public static void Main()
   {
      StreamWriter sw = new StreamWriter(@".\case.txt");   
      string[] words = { "file", "sıfır", "Dženana" };
      CultureInfo[] cultures = { CultureInfo.InvariantCulture, 
                                 new CultureInfo("en-US"),  
                                 new CultureInfo("tr-TR") };

      foreach (var word in words) {
         sw.WriteLine("{0}:", word);
         foreach (var culture in cultures) {
            string name = String.IsNullOrEmpty(culture.Name) ? 
                                 "Invariant" : culture.Name;
            string upperWord = word.ToUpper(culture);
            sw.WriteLine("   {0,10}: {1,7} {2, 38}", name, 
                         upperWord, ShowHexValue(upperWord));

         }
         sw.WriteLine();  
      }
      sw.Close();
   }

   private static string ShowHexValue(string s)
   {
      string retval = null;
      foreach (var ch in s) {
         byte[] bytes = BitConverter.GetBytes(ch);
         retval += String.Format("{0:X2} {1:X2} ", bytes[1], bytes[0]);     
      }
      return retval;
   } 
}
// The example displays the following output:
//    file:
//        Invariant:    FILE               00 46 00 49 00 4C 00 45 
//            en-US:    FILE               00 46 00 49 00 4C 00 45 
//            tr-TR:    FİLE               00 46 01 30 00 4C 00 45 
//    
//    sıfır:
//        Invariant:   SıFıR         00 53 01 31 00 46 01 31 00 52 
//            en-US:   SIFIR         00 53 00 49 00 46 00 49 00 52 
//            tr-TR:   SIFIR         00 53 00 49 00 46 00 49 00 52 
//    
//    Dženana:
//        Invariant:  DžENANA   01 C5 00 45 00 4E 00 41 00 4E 00 41 
//            en-US:  DŽENANA   01 C4 00 45 00 4E 00 41 00 4E 00 41 
//            tr-TR:  DŽENANA   01 C4 00 45 00 4E 00 41 00 4E 00 41 


구문 분석 및 서식 지정

형식 지정과 구문 분석은 역순으로 진행됩니다. 형식 지정 규칙에서는 날짜 및 시간 또는 숫자와 같은 값을 문자열 표현으로 변환하는 방법을 결정하고, 구문 분석 규칙에서는 문자열 표현을 날짜 및 시간과 같은 값으로 변환하는 방법을 결정합니다. 서식 및 구문 분석 규칙 모두 문화권 규칙에 종속됩니다. 다음 예제에서는 문화권 관련 날짜 문자열을 해석할 때 발생할 수 있는 모호성을 보여 줍니다. 날짜 문자열을 생성하는 데 사용한 문화권을 모르면 03/01/2011, 3/1/2011 및 01/03/2011이 2011년 1월 3일 또는 2011년 3월 1일을 나타내는지 여부를 알 수 없습니다.


using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      DateTime date = new DateTime(2011, 3, 1);
      CultureInfo[] cultures = { CultureInfo.InvariantCulture, 
                                 new CultureInfo("en-US"), 
                                 new CultureInfo("fr-FR") };

      foreach (var culture in cultures)
         Console.WriteLine("{0,-12} {1}", String.IsNullOrEmpty(culture.Name) ?
                           "Invariant" : culture.Name, 
                           date.ToString("d", culture));                                    
   }
}
// The example displays the following output:
//       Invariant    03/01/2011
//       en-US        3/1/2011
//       fr-FR        01/03/2011


마찬가지로, 다음 예제와 같이 규칙이 구문 분석에 사용되는 문화권에 따라 단일 문자열에서 다른 날짜를 만들 수 있습니다.


using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string dateString = "07/10/2011";
      CultureInfo[] cultures = { CultureInfo.InvariantCulture, 
                                 CultureInfo.CreateSpecificCulture("en-GB"), 
                                 CultureInfo.CreateSpecificCulture("en-US") };
      Console.WriteLine("{0,-12} {1,10} {2,8} {3,8}\n", "Date String", "Culture", 
                                                 "Month", "Day");
      foreach (var culture in cultures) {
         DateTime date = DateTime.Parse(dateString, culture);
         Console.WriteLine("{0,-12} {1,10} {2,8} {3,8}", dateString, 
                           String.IsNullOrEmpty(culture.Name) ?
                           "Invariant" : culture.Name, 
                           date.Month, date.Day);
      }                      
   }
}
// The example displays the following output:
//       Date String     Culture    Month      Day
//       
//       07/10/2011    Invariant        7       10
//       07/10/2011        en-GB       10        7
//       07/10/2011        en-US        7       10


문자열 비교 및 정렬

정렬 규칙에서는 유니코드 문자의 알파벳 순서 및 두 문자열을 서로 비교하는 방법을 결정합니다. 예를 들어, String.Compare(String, String, StringComparison) 메서드는 StringComparison 매개 변수를 기반으로 두 문자열을 비교합니다. 매개 변수 값이 StringComparison.CurrentCulture인 경우 메서드는 현재 문화권의 규칙을 사용하는 언어적 비교를 수행하고 매개 변수 값이 StringComparison.Ordinal인 경우 메서드는 서수 비교를 수행합니다. 따라서 다음 예제와 같이 현재 문화권이 미국인 경우 영어에서 String.Compare(String, String, StringComparison) 메서드에 대한 첫 번째 호출(문화권 구분 비교)은 "a"가 "A"보다 작은 것으로 간주하지만, 같은 메서드의 두 번째 호출(서수 비교 사용)은 "a"가 "A"보다 크다고 간주합니다.


using System;
using System.Globalization;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
      Console.WriteLine(String.Compare("A", "a", StringComparison.CurrentCulture));
      Console.WriteLine(String.Compare("A", "a", StringComparison.Ordinal));
   }
}
// The example displays the following output:
//       1
//       -32


.NET Framework에서는 단어, 문자열 및 서수 정렬 규칙을 지원합니다.

  • 단어 정렬에서는 문화권에 따라 문자열을 비교합니다. 문자열에서 특정한 비영숫자 유니코드 문자에는 특별한 가중치가 할당될 수 있습니다. 예를 들면, 하이픈("-")에는 매우 적은 가중치가 할당될 수 있으므로 "coop"와 "co-op"는 정렬된 목록에서 서로 붙어있을 수 있습니다. 단어 정렬 규칙을 사용하여 두 문자열을 비교하는 String 메서드 목록에 대해서는 String Operations by Category 섹션을 참조하십시오.

  • 문자열 정렬에서는 문화권 구분 비교도 수행합니다. 문자열 정렬에는 특수한 경우가 없으며 모든 비영숫자 기호가 모든 영숫자 유니코드 문자 전에 나온다는 점을 제외하면 단어 정렬과 비슷합니다. 두 문자열은 CompareOptions.StringSort의 값을 제공하는 options 매개 변수가 있는 CompareInfo.Compare 메서드 오버로드를 호출함으로써 문자열 정렬 규칙을 사용하여 비교할 수 있습니다. .NET Framework에서 문자열 정렬 규칙을 사용하여 두 문자열을 비교하는 데 제공하는 유일한 메서드입니다.

  • 서수 정렬에서는 문자열에 있는 Char 개체 각각의 숫자 값을 기준으로 문자열을 비교합니다. 소문자 버전과 대문자 버전의 문자는 코드 포인트가 서로 다르므로 서수 비교에서는 자동으로 대/소문자가 구분됩니다. 그러나 대/소문자가 중요하지 않은 경우에는 대/소문자를 무시하는 서수 비교를 지정할 수 있습니다. 이는 고정 문화권을 사용하여 문자열을 대문자로 변환한 다음 해당 결과에 대해 서수 비교를 수행하는 것과 같습니다. 서수 정렬 규칙을 사용하여 두 문자열을 비교하는 String 메서드 목록에 대해서는 String Operations by Category 섹션을 참조하십시오.

문화권 구분 비교는 CultureInfo.InvariantCulture 속성으로 지정된 고정 문화권을 비롯하여 CultureInfo 개체를 명시적 또는 암시적으로 사용하는 비교입니다. 암시적 문화권은 Thread.CurrentCultureCultureInfo.CurrentCulture 속성으로 지정되는 현재 문화권입니다. 정렬에서는 일반적으로 서수 비교가 아니라 문화권 구분 비교가 적절합니다. 또한 두 개의 문자열이 같은지 여부, 즉 동일성을 확인하는 데는 대개 문화권 구분 비교가 아니라 서수 비교가 적절합니다.

참고참고

문자열 비교에 사용된 문화권 비교 정렬 및 대/소문자 구분 규칙은 .NET Framework 버전에 따라 다릅니다. .NET Framework 4에서 정렬, 케이스, 정규화 및 유니코드 문자 정보는 Windows 7에 동기화되며 유니코드 5.1 표준을 준수합니다.

단어, 문자열 및 서수 정렬 규칙에 대한 자세한 내용은 System.Globalization.CompareOptions를 참조하십시오. 각 규칙 사용 시기에 대한 권장 사항은 .NET Framework에서 문자열 사용에 대한 유용한 정보를 참조하십시오.

일반적으로는 문자열의 정렬 순서를 결정하기 위해 Compare와 같은 문자열 비교 메서드를 직접 호출하지 않습니다. 대신 비교 메서드는 Array.Sort 또는 List<T>.Sort 같은 정렬 메서드로 호출됩니다. 다음 예제는 문자열 비교 메서드를 명시적으로 호출하지 않고 네 가지 정렬 작업(현재 문화권을 사용한 단어 정렬, 고정 문화권을 사용한 단어 정렬, 서수 정렬, 고정 문화권을 사용한 문자열 정렬)을 수행합니다. 각 정렬 형식은 배열에서 문자열의 고유한 순서를 생성합니다.


using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] strings = { "coop", "co-op", "cooperative", 
                           "co\u00ADoperative", "cœur", "coeur" };

      // Perform a word sort using the current (en-US) culture.
      string[] current = new string[strings.Length]; 
      strings.CopyTo(current, 0); 
      Array.Sort(current, StringComparer.CurrentCulture);

      // Perform a word sort using the invariant culture.
      string[] invariant = new string[strings.Length];
      strings.CopyTo(invariant, 0); 
      Array.Sort(invariant, StringComparer.InvariantCulture);

      // Perform an ordinal sort.
      string[] ordinal = new string[strings.Length];
      strings.CopyTo(ordinal, 0); 
      Array.Sort(ordinal, StringComparer.Ordinal);

      // Perform a string sort using the current culture.
      string[] stringSort = new string[strings.Length];
      strings.CopyTo(stringSort, 0); 
      Array.Sort(stringSort, new SCompare());

      // Display array values
      Console.WriteLine("{0,13} {1,13} {2,15} {3,13} {4,13}\n", 
                        "Original", "Word Sort", "Invariant Word", 
                        "Ordinal Sort", "String Sort");
      for (int ctr = 0; ctr < strings.Length; ctr++)
         Console.WriteLine("{0,13} {1,13} {2,15} {3,13} {4,13}", 
                           strings[ctr], current[ctr], invariant[ctr], 
                           ordinal[ctr], stringSort[ctr] );          
   }
}

// IComparer<String> implementation to perform string sort.
internal class SCompare : IComparer<String>
{
   public int Compare(string x, string y)
   {
      return CultureInfo.CurrentCulture.CompareInfo.Compare(x, y, CompareOptions.StringSort);
   }
}
// The example displays the following output:
//         Original     Word Sort  Invariant Word  Ordinal Sort   String Sort
//    
//             coop          cœur            cœur         co-op         co-op
//            co-op         coeur           coeur         coeur          cœur
//      cooperative          coop            coop          coop         coeur
//     co­operative         co-op           co-op   cooperative          coop
//             cœur   cooperative     cooperative  co­operative   cooperative
//            coeur  co­operative    co­operative          cœur  co­operative


주의 정보주의

문자열을 비교하는 주 목적이 두 문자열이 동일한지 여부를 확인하려는 것인 경우 String.Equals 메서드를 호출해야 합니다. 일반적으로 Equals를 사용하여 서수 비교를 수행합니다. String.Compare 메서드는 주로 문자열을 정렬하는 데 사용됩니다.

String.StartsWith , String.IndexOf 등의 문자열 검색 메서드도 문화권을 구분하는 비교 또는 서수 문자열 비교를 수행할 수 있습니다. 다음 예제에서는 IndexOf 메서드를 사용하여 서수 비교와 문화권을 구분하는 비교 사이의 차이점을 보여 줍니다. 현재 문화권이 영어(미국)인 문화권 구분 검색에서는 부분 문자열 "oe"를 합자 "œ"와 일치하는 것으로 고려합니다. 사용자 지정 하이픈(U+00AD)은 너비가 0인 문자이므로 사용자 지정 하이픈은 검색 시 Empty와 동일한 것으로 취급되고 문자열의 맨 앞에서 일치하는 항목을 찾습니다. 반면에, 서수 검색으로 어떠한 경우이든 일치를 찾지 못합니다.


using System;

public class Example
{
   public static void Main()
   {
      // Search for "oe" and "œu" in "œufs" and "oeufs".
      string s1 = "œufs";
      string s2 = "oeufs";
      FindInString(s1, "oe", StringComparison.CurrentCulture);
      FindInString(s1, "oe", StringComparison.Ordinal);
      FindInString(s2, "œu", StringComparison.CurrentCulture);
      FindInString(s2, "œu", StringComparison.Ordinal);
      Console.WriteLine();

      string s3 = "co\u00ADoperative";
      FindInString(s3, "\u00AD", StringComparison.CurrentCulture);
      FindInString(s3, "\u00AD", StringComparison.Ordinal);
   }

   private static void FindInString(string s, string substring, StringComparison options)
   {
      int result = s.IndexOf(substring, options);
      if (result != -1)
         Console.WriteLine("'{0}' found in {1} at position {2}", 
                           substring, s, result);
      else
         Console.WriteLine("'{0}' not found in {1}", 
                           substring, s);                                                  
   }
}
// The example displays the following output:
//       'oe' found in œufs at position 0
//       'oe' not found in œufs
//       'œu' found in oeufs at position 0
//       'œu' not found in oeufs
//       
//       '­' found in co­operative at position 0
//       '­' found in co­operative at position 2


같음 여부 테스트

String.Compare 메서드를 사용하여 정렬 순서에서 두 문자열의 관계를 확인합니다. 일반적으로 이것은 문화권을 구분하는 작업입니다. 이와 달리 같음 여부 테스트를 위해 String.Equals 메서드를 호출합니다. 같음 테스트에서는 일반적으로 사용자 입력과 유효한 사용자 이름, 암호, 파일 시스템 경로와 같이 몇 가지 알려진 문자열을 비교하므로 보통은 서수적 연산입니다.

주의 정보주의

String.Compare 메서드를 호출하고 반환 값이 0인지를 확인하여 같음 여부를 테스트할 수 있습니다. 그러나 이 방법은 사용하지 않는 것이 좋습니다. 두 문자열이 동일한지 확인하려면 String.Equals 메서드의 오버로드 중 하나를 호출해야 합니다. 호출할 기본 오버로드는 인스턴스 Equals 메서드 또는 정적 Equals 메서드입니다 그 이유는 두 메서드 모두 비교 형식을 명시적으로 지정하는 System.StringComparison 매개 변수를 포함하기 때문입니다.

다음 예제에서는 같음에 대해 서수 비교를 수행해야 하는 경우에 대신 문화권 구분 비교를 수행하는 경우의 위험성을 보여 줍니다. 이 경우 문자열 "FILE://"이 포함된 URL의 앞 부분을 대/소문자 구분 없이 비교하여 "FILE://" 또는 "file://"로 시작하는 URL에서 파일 시스템에 액세스하는 것을 방지하는 것이 코드의 의도입니다. 그러나 소문자 "i"에 해당하는 터키어 대문자는 "I"가 아닌 "i"이기 때문에 "file://"로 시작하는 URL에 터키어(터키) 문화권을 사용하여 문화권 구분 비교를 수행하면 같음 비교가 실패합니다. 결과적으로, 파일 시스템 액세스가 실수로 허용됩니다. 반면, 서수 비교를 수행하고 같음 비교가 성공할 경우 파일 시스템 액세스가 부인됩니다.


using System;
using System.Globalization;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("tr-TR");      

      string filePath = "file://c:/notes.txt";

      Console.WriteLine("Culture-sensitive test for equality:");
      if (! TestForEquality(filePath, StringComparison.CurrentCultureIgnoreCase))
         Console.WriteLine("Access to {0} is allowed.", filePath);
      else
         Console.WriteLine("Access to {0} is not allowed.", filePath);

      Console.WriteLine("\nOrdinal test for equality:");
      if (! TestForEquality(filePath, StringComparison.OrdinalIgnoreCase))
         Console.WriteLine("Access to {0} is allowed.", filePath);
      else
         Console.WriteLine("Access to {0} is not allowed.", filePath);
   }

   private static bool TestForEquality(string str, StringComparison cmp)
   {
      int position = str.IndexOf("://");
      if (position < 0) return false;

      string substring = str.Substring(0, position);  
      return substring.Equals("FILE", cmp);
   }
}
// The example displays the following output:
//       Culture-sensitive test for equality:
//       Access to file://c:/notes.txt is allowed.
//       
//       Ordinal test for equality:
//       Access to file://c:/notes.txt is not allowed.


성명으로 이동

정규화

일부 유니코드 문자에는 여러 가지 표현이 있습니다. 예를 들어, 다음 코드 포인트는 문자 "ắ"를 나타낼 수 있습니다.

  • U+1EAF

  • U+0103 U+0301

  • U+0061 U+0306 U+0301

단일 문자가 여러 가지로 표현될 수 있으므로 검색, 정렬, 비교 및 기타 작업이 복잡해집니다.

유니코드 표준에서는 동일한 이진 표현 중 어느 것을 전달해도 단일 이진 표현의 유니코드 문자를 반환하는 정규화라는 프로세스를 정의합니다. 정규화에는 각각 다른 규칙을 따르는 정규화 형식이라는 몇 가지 알고리즘이 사용됩니다. 현재 .NET Framework에서는 유니코드 정규화 형식 C, D, KC 및 KD를 지원합니다. 문자열이 동일한 정규화 폼으로 정규화되면 서수 비교를 사용하여 비교할 수 있습니다. 정규화 및 정규화 형식에 대한 자세한 내용은 System.Text.NormalizationForm을 참조하십시오.

String.IsNormalized() 메서드를 호출하여 문자열을 정규화 형식 C로 정규화할지 여부를 확인하거나 String.IsNormalized(NormalizationForm) 메서드를 호출하여 지정된 정규화 형식으로 정규화할지 여부를 확인할 수 있습니다. 또한 String.Normalize() 메서드를 호출하여 문자열을 정규화 형식 C로 변환하거나 String.Normalize(NormalizationForm) 메서드를 호출하여 문자열을 지정된 정규화 형식으로 변환할 수도 있습니다.

다음 예제에서는 문자열 정규화를 보여 줍니다. 세 가지 방법 및 세 가지 문자열로 문자 "ố"를 정의하고 같음 여부에 대해 서수 비교를 사용하여 각 문자열이 나머지 두 문자와 다른지를 판단합니다. 그런 다음 각 문자열을 지원되는 정규화 양식으로 변환하고 지정된 정규화 양식의 각 문자열의 서수 비교를 수행합니다. 각각의 경우 두 번째 같음 여부 테스트는 문자열이 동일하다는 것을 보여줍니다.


using System;
using System.Globalization;
using System.IO;
using System.Text;

public class Example
{
   private static StreamWriter sw;

   public static void Main()
   {
      sw = new StreamWriter(@".\TestNorm1.txt");

      // Define three versions of the same word. 
      string s1 = "sống";        // create word with U+1ED1
      string s2 = "s\u00F4\u0301ng";
      string s3 = "so\u0302\u0301ng";

      TestForEquality(s1, s2, s3);      
      sw.WriteLine();

      // Normalize and compare strings using each normalization form.
      foreach (string formName in Enum.GetNames(typeof(NormalizationForm)))
      {
         sw.WriteLine("Normalization {0}:\n", formName); 
         NormalizationForm nf = (NormalizationForm) Enum.Parse(typeof(NormalizationForm), formName);
         string[] sn = NormalizeStrings(nf, s1, s2, s3);
         TestForEquality(sn);           
         sw.WriteLine("\n");                                        
      }

      sw.Close();   
   }

   private static void TestForEquality(params string[] words)
   {
      for (int ctr = 0; ctr <= words.Length - 2; ctr++)
         for (int ctr2 = ctr + 1; ctr2 <= words.Length - 1; ctr2++) 
            sw.WriteLine("{0} ({1}) = {2} ({3}): {4}", 
                         words[ctr], ShowBytes(words[ctr]),
                         words[ctr2], ShowBytes(words[ctr2]),
                         words[ctr].Equals(words[ctr2], StringComparison.Ordinal));
   }

   private static string ShowBytes(string str)
   {
      string result = null;
      foreach (var ch in str)
         result += String.Format("{0} ", Convert.ToUInt16(ch).ToString("X4")); 
      return result.Trim();            
   } 

   private static string[] NormalizeStrings(NormalizationForm nf, params string[] words)
   {
      for (int ctr = 0; ctr < words.Length; ctr++)
         if (! words[ctr].IsNormalized(nf))
            words[ctr] = words[ctr].Normalize(nf); 
      return words;   
   }
}
// The example displays the following output:
//       sống (0073 1ED1 006E 0067) = sống (0073 00F4 0301 006E 0067): False
//       sống (0073 1ED1 006E 0067) = sống (0073 006F 0302 0301 006E 0067): False
//       sống (0073 00F4 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): False
//       
//       Normalization FormC:
//       
//       sống (0073 1ED1 006E 0067) = sống (0073 1ED1 006E 0067): True
//       sống (0073 1ED1 006E 0067) = sống (0073 1ED1 006E 0067): True
//       sống (0073 1ED1 006E 0067) = sống (0073 1ED1 006E 0067): True
//       
//       
//       Normalization FormD:
//       
//       sống (0073 006F 0302 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): True
//       sống (0073 006F 0302 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): True
//       sống (0073 006F 0302 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): True
//       
//       
//       Normalization FormKC:
//       
//       sống (0073 1ED1 006E 0067) = sống (0073 1ED1 006E 0067): True
//       sống (0073 1ED1 006E 0067) = sống (0073 1ED1 006E 0067): True
//       sống (0073 1ED1 006E 0067) = sống (0073 1ED1 006E 0067): True
//       
//       
//       Normalization FormKD:
//       
//       sống (0073 006F 0302 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): True
//       sống (0073 006F 0302 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): True
//       sống (0073 006F 0302 0301 006E 0067) = sống (0073 006F 0302 0301 006E 0067): True


성명으로 이동

범주별 문자열 작업

String 클래스는 문자열을 비교하고, 문자열의 같음을 비교하고, 문자열에서 문자 또는 하위 문자열을 찾고, 문자열을 수정하고, 문자열에서 하위 문자열을 추출하고, 문자열을 결합하고, 값의 서식을 지정하고 문자열을 복사하고 문자열을 정규화하는 멤버를 제공합니다.

문자열 비교

문자열을 비교한 후 다음 String 메서드를 사용하여 정렬 순서에서 상대적인 위치를 확인할 수 있습니다.

  • Compare 는 정렬 순서에서 한 문자열과 다른 문자열의 관계를 나타내는 정수를 반환합니다.

  • CompareOrdinal 은 한 문자열과 다른 문자열의 코드 포인트 비교에 기초하여 두 문자열 간의 관계를 나타내는 정수를 반환합니다.

  • CompareTo 는 정렬 순서에서 현재 문자열 인스턴스와 다른 문자열의 관계를 나타내는 정수를 반환합니다. CompareTo 메서드는 String 클래스의 IComparableIComparable<T> 구현을 제공합니다.

문자열 같음 여부 테스트

두 문자열이 같은지를 확인하려면 Equals 메서드를 호출합니다. 인스턴스 Equals 및 정적 Equals 오버로드를 사용하면 비교에서 문화권을 구분하는지 또는 서수 비교인지와 대/소문자를 구분할지 또는 무시할지를 지정할 수 있습니다. 대부분의 같음 테스트는 서수이며, 시스템 리소스(예: 파일 시스템 개체)에 대한 액세스를 결정하는 같음 비교는 항상 서수여야 합니다.

문자열에서 문자 찾기

String 클래스는 두 종류의 검색 메서드를 포함합니다.

  • 특정 부분 문자열이 문자열 인스턴스에 있는지를 나타내는 Boolean 값을 반환하는 메서드입니다. 예를 들면 Contains, EndsWithStartsWith 메서드 등이 여기에 해당합니다.

  • 문자열 인스턴스에서 부분 문자열의 시작 위치를 나타내는 메서드입니다. 예를 들면 IndexOf, IndexOfAny, LastIndexOfLastIndexOfAny 메서드 등이 여기에 해당합니다.

문자열 수정

String 클래스는 문자열의 값을 수정하는 다음 메서드를 포함하고 있습니다.

  • Insert 는 문자열을 현재 String 인스턴스에 삽입합니다.

  • PadLeft 는 문자열의 맨 앞에 지정된 문자를 하나 이상 삽입합니다.

  • PadRight 는 문자열의 맨 앞에 지정된 문자를 하나 이상 삽입합니다.

  • Remove 는 현재 String 인스턴스에서 부분 문자열을 삭제합니다.

  • Replace 는 부분 문자열을 현재 String 인스턴스에 있는 다른 문자열로 대체합니다.

  • ToLower ToLowerInvariant는 문자열에 있는 모든 문자를 소문자로 변환합니다.

  • ToUpper ToUpperInvariant는 문자열에 있는 모든 문자를 대문자로 변환합니다.

  • Trim 은 문자열의 처음과 끝에서 모든 문자를 제거합니다.

  • TrimEnd 는 문자열의 끝에서 모든 문자를 제거합니다.

  • TrimStart 는 문자열의 시작에서 모든 문자를 제거합니다.

중요중요

모든 문자열 수정 메서드가 새로운 String 개체를 반환합니다. 현재 인스턴스의 값을 수정하지 않습니다.

문자열에서 부분 문자열을 추출

String.Split 메서드는 단일 문자열을 여러 문자열로 구분합니다. 메서드 오버로드를 사용하면 복수 구분 기호를 지정하고, 메서드가 추출하는 부분 문자열의 최대 수를 결정하고, 반환된 문자열에 빈 문자열(구분 문자가 인접해 있을 때 발생)이 포함되는지 여부를 결정할 수 있습니다.

문자열 비교

다음 String 메서드는 문자열 연결에 사용할 수 있습니다:

  • Concat 는 하나 이상의 부분 문자열을 단일 문자열로 결합합니다.

  • Join 은 하나 이상의 부분 문자열을 단일 요소로 연결하고 각 부분 분사열 사이에 구분 기호를 추가합니다.

값 서식 지정

String.Format 메서드는 합성 서식 지정 기능을 사용하여 문자열에서 하나 이상의 자리 표시자를 일부 개체 또는 값의 문자열 표현으로 바꿉니다. Format 메서드를 사용하여 종종 다음을 수행할 수 있습니다.

  • 문자열에 숫자 값의 문자열 표현을 포함합니다.

  • 문자열에 날짜 및 시간 값의 문자열 표현을 포함합니다.

  • 문자열에 열거형 값의 문자열 표현을 포함합니다.

  • 문자열에 IFormattable 인터페이스를 지원하는 일부 개체의 문자열 표현을 포함합니다.

  • 더 큰 문자열 내의 필드에 부분 문자열을 오른쪽 맞춤 또는 왼쪽 맞춤합니다.

문자열 복사

다음 String 메서드를 호출하여 문자열을 복사할 수 있습니다.

  • Clone 은 기존 String개체에 대한 참조를 반환합니다.

  • Copy 는 기존 문자열의 사본을 만듭니다.

  • CopyTo 는 문자열 일부를 문자 배열로 복사합니다.

문자열 정규화

유니코드에서는 단일 문자가 여러 코드 포인트를 가질 수 있습니다. 정규화는 이러한 동등한 문자를 동일한 이진 표현으로 변환합니다. String.Normalize 메서드는 정규화를 수행하고 String.IsNormalized 메서드는 문자열이 정규화되었는지 여부를 확인합니다.

성명으로 이동

.NET Framework

4, 3.5, 3.0, 2.0, 1.1, 1.0에서 지원

.NET Framework Client Profile

4, 3.5 SP1에서 지원

에서 지원

Windows 7, Windows Vista SP1 이상, Windows XP SP3, Windows XP SP2 x64 버전, Windows Server 2008(Server Core는 지원되지 않음), Windows Server 2008 R2(Server Core는 SP1 이상에서 지원됨), Windows Server 2003 SP2

.NET Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

이 형식은 스레드로부터 안전합니다.

날짜

변경 내용

이유

2010년 7월

설명 부분의 후반부가 광범위하게 수정되었습니다.

향상된 기능 관련 정보

2010년 6월

설명 부분의 전반부가 광범위하게 수정되었습니다.

향상된 기능 관련 정보

표시: