0에서 65535까지의 값 범위의 부호 없는 16비트(2 바이트) 코드 포인트 시퀀스를 보유합니다. 각 코드 포인트 또는 문자 코드는 단일 유니코드 문자를 나타냅니다. 문자열은 0~약 20억(2 ^ 31) 유니코드 문자를 포함할 수 있습니다.
비고
데이터 형식을 String 사용하여 요소 배열의 Char()Char 배열 관리 오버헤드 없이 여러 문자를 보유합니다.
기본값 String 은 null 참조입니다 Nothing . 빈 문자열(값 "")과는 다릅니다.
유니코드 문자
유니코드의 처음 128개 코드 포인트(0~127)는 표준 미국 키보드의 문자 및 기호에 해당합니다. 이러한 처음 128개의 코드 포인트는 ASCII 문자 집합이 정의하는 것과 동일합니다. 두 번째 128개의 코드 포인트(128~255)는 라틴 기반 알파벳 문자, 강조, 통화 기호 및 분수와 같은 특수 문자를 나타냅니다. 유니코드는 다양한 기호에 나머지 코드 포인트(256-65535)를 사용합니다. 여기에는 전 세계 텍스트 문자, 발음 문자, 수학 및 기술 기호가 포함됩니다.
변수의 개별 문자 String 와 IsPunctuation 같은 IsDigit 메서드를 사용하여 유니코드 분류를 확인할 수 있습니다.
형식 요구 사항
따옴표(" ")에 리터럴을 String 묶어야 합니다. 문자열의 문자 중 하나로 따옴표를 포함해야 하는 경우 두 개의 연속적인 따옴표("")를 사용합니다. 다음 예제에서는 이를 보여 줍니다.
Dim j As String = "Joe said ""Hello"" to me."
Dim h As String = "Hello"
' The following messages all display the same thing:
' "Joe said "Hello" to me."
MsgBox(j)
MsgBox("Joe said " & """" & h & """" & " to me.")
MsgBox("Joe said """ & h & """ to me.")
문자열의 따옴표를 나타내는 연속적인 따옴표는 리터럴을 시작하고 끝내 String 는 따옴표와는 독립적입니다.
문자열 조작
변수에 문자열을 String 할당하면 해당 문자열은 변경할 수 없으므로 길이나 내용을 변경할 수 없습니다. 어떤 방식으로든 문자열을 변경하면 Visual Basic에서 새 문자열을 만들고 이전 문자열을 중단합니다. 그런 다음 변수는 String 새 문자열을 가리킵니다.
다양한 문자열 함수를 사용하여 변수의 String 내용을 조작할 수 있습니다. 다음 예제에서는 함수를 보여 줍니다 Left .
Dim S As String = "Database"
' The following statement sets S to a new string containing "Data".
S = Microsoft.VisualBasic.Left(S, 4)
다른 구성 요소에서 만든 문자열은 선행 또는 후행 공백으로 채워질 수 있습니다. 이러한 문자열을 수신하는 경우 , LTrim및 RTrim 함수를 사용하여 Trim이러한 공백을 제거할 수 있습니다.
문자열 조작에 대한 자세한 내용은 문자열을 참조 하세요.
프로그래밍 팁
음수. 보유
String하는 문자는 부호가 없으며 음수 값을 나타낼 수 없습니다. 어떤 경우에도 숫자 값을 보유하기 위해String를 사용해서는 안 됩니다.Interop 고려 사항. .NET Framework용으로 작성되지 않은 구성 요소(예: Automation 또는 COM 개체)와 상호 작용하는 경우 문자열 문자는 다른 환경에서 다른 데이터 너비(8비트)를 가집니다. 이러한 구성 요소에 8비트 문자의 문자열 인수를 전달하는 경우 새 Visual Basic 코드 대신
String요소 배열Byte로Byte()선언합니다.형식 문자. 식별자 형식 문자를
$식별자에 추가하면 데이터 형식으로 강제 적용String됩니다.String에 리터럴 형식 문자가 없습니다. 그러나 컴파일러는 따옴표()로 묶인 리터럴을" ".로String처리합니다.프레임워크 형식. .NET Framework의 해당 형식은 클래스입니다 System.String .
참고하십시오
.NET