>  기사  >  백엔드 개발  >  [C# 튜토리얼] C# 문자열(String)

[C# 튜토리얼] C# 문자열(String)

黄舟
黄舟원래의
2016-12-26 14:31:351369검색

C# 문자열(String)

C#에서는 문자 배열을 사용하여 문자열을 나타낼 수 있지만 더 일반적인 접근 방식은 string 키워드를 사용하여 문자열 변수를 선언하는 것입니다. string 키워드는 System.String 클래스의 별칭입니다.

문자열 객체 생성

다음 방법 중 하나를 사용하여 문자열 객체를 생성할 수 있습니다.

문자열 변수에 문자열 할당

By 문자열 클래스 생성자 사용

문자열 연결 연산자( + )를 사용하여 문자열을 변환합니다.

속성을 ​​검색하거나 문자열을 반환하는 메서드를 호출하여

형식 지정 방법을 다음과 같이 변환합니다. 값이나 객체는 문자열 표현입니다.

다음 예에서는 이를 보여줍니다.

using System;

namespace StringApplication
{
    class Program
    {
        static void Main(string[] args)
        {
           //字符串,字符串连接
            string fname, lname;
            fname = "Rowan";
            lname = "Atkinson";

            string fullname = fname + lname;
            Console.WriteLine("Full Name: {0}", fullname);

            //通过使用 string 构造函数
            char[] letters = { 'H', 'e', 'l', 'l','o' };
            string greetings = new string(letters);
            Console.WriteLine("Greetings: {0}", greetings);

            //方法返回字符串
            string[] sarray = { "Hello", "From", "Tutorials", "Point" };
            string message = String.Join(" ", sarray);
            Console.WriteLine("Message: {0}", message);

            //用于转化值的格式化方法
            DateTime waiting = new DateTime(2012, 10, 10, 17, 58, 1);
            string chat = String.Format("Message sent at {0:t} on {0:D}", 
            waiting);
            Console.WriteLine("Message: {0}", chat);
            Console.ReadKey() ;
        }
    }
}

위 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.

Full Name: Rowan Atkinson
Greetings: Hello
Message: Hello From Tutorials Point
Message: Message sent at 5:58 PM on Wednesday, October 10, 2012

String 클래스의 속성

String 클래스에는 다음 두 가지 속성이 있습니다.

일련번호

속성 이름 및 설명

1 Chars
현재 String 개체에서 Char 개체의 지정된 위치를 가져옵니다.

2 길이
현재 String 개체의 문자 수를 가져옵니다.

문자열 클래스의 메소드

문자열 클래스에는 문자열 객체를 조작하는 다양한 메소드가 있습니다. 다음 표는 가장 일반적으로 사용되는 방법 중 일부를 제공합니다.

일련 번호

방법 이름 및 설명

공개 1개 static int Compare( string strA, string strB)
지정된 두 문자열 개체를 비교하고 정렬 순서에서 상대적 위치를 나타내는 정수를 반환합니다. 이 방법은 대소문자를 구분합니다.

2 public static int Compare( string strA, string strB, boolignoreCase)
지정된 두 문자열 개체를 비교하고 정렬 순서에서 상대적 위치를 나타내는 정수를 반환합니다. 그러나 부울 인수가 true인 경우 메소드는 대소문자를 구분하지 않습니다.

3개의 public static string Concat( string str0, string str1)
두 개의 문자열 객체를 연결합니다.

4개의 public static string Concat( string str0, string str1, string str2)
3개의 문자열 객체를 연결합니다.

5개의 public static string Concat( string str0, string str1, string str2, string str3)
4개의 문자열 객체를 연결합니다.

6 public bool Contains( string value)
지정된 문자열 객체가 문자열에 나타나는지 여부를 나타내는 값을 반환합니다.

7 public static string Copy( string str )
지정된 문자열과 동일한 값을 가진 새 String 개체를 만듭니다.

8 public void CopyTo( int sourceIndex, char[] Destination, int DestinationIndex, int count )
문자열 객체의 지정된 위치부터 지정된 개수의 문자를 유니코드의 지정된 위치에 복사합니다. 문자 배열.

9 public bool EndsWith( string value)
문자열 객체의 끝이 지정된 문자열과 일치하는지 확인합니다.

10 public bool Equals( string value)
현재 문자열 개체가 지정된 문자열 개체와 동일한 값을 갖는지 확인합니다.

11 public static bool Equals( string a, string b)
지정된 두 문자열 객체가 동일한 값을 갖는지 확인합니다.

12 public static string Format( string format, Object arg0 )
지정된 문자열에 있는 하나 이상의 형식 항목을 지정된 객체의 문자열 표현으로 바꿉니다.

13 public int IndexOf( char value )
현재 문자열에서 지정된 유니코드 문자가 처음 나타나는 인덱스를 반환합니다. 인덱스는 0부터 시작합니다.

14 public int IndexOf( string value )
이 인스턴스에서 지정된 문자열이 처음 나타나는 인덱스를 반환합니다. 인덱스는 0부터 시작합니다.

15 public int IndexOf( char value, int startIndex )
문자열의 지정된 문자 위치에서 시작하여 지정된 유니코드 문자가 처음 나타나는 인덱스를 반환합니다. 인덱스는 0부터 시작합니다.

16 public int IndexOf( string value, int startIndex )
이 인스턴스의 지정된 문자 위치에서 시작하여 지정된 문자열이 처음 나타나는 인덱스를 반환합니다. 인덱스는 0부터 시작합니다.

17    public int IndexOfAny( char[] anyOf ) 
返回某一个指定的 Unicode 字符数组中任意字符在该实例中第一次出现的索引,索引从 0 开始。    

18    public int IndexOfAny( char[] anyOf, int startIndex ) 
返回某一个指定的 Unicode 字符数组中任意字符从该实例中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。    

19    public string Insert( int startIndex, string value ) 
返回一个新的字符串,其中,指定的字符串被插入在当前 string 对象的指定索引位置。    

20    public static bool IsNullOrEmpty( string value ) 
指示指定的字符串是否为 null 或者是否为一个空的字符串。    

21    public static string Join( string separator, params string[] value ) 
连接一个字符串数组中的所有元素,使用指定的分隔符分隔每个元素。    

22    public static string Join( string separator, string[] value, int startIndex, int count ) 
链接一个字符串数组中的指定元素,使用指定的分隔符分隔每个元素。    

23    public int LastIndexOf( char value ) 
返回指定 Unicode 字符在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。    

24    public int LastIndexOf( string value ) 
返回指定字符串在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。    

25    public string Remove( int startIndex ) 
移除当前实例中的所有字符,从指定位置开始,一直到最后一个位置为止,并返回字符串。    

26    public string Remove( int startIndex, int count ) 
从当前字符串的指定位置开始移除指定数量的字符,并返回字符串。    

27    public string Replace( char oldChar, char newChar ) 
把当前 string 对象中,所有指定的 Unicode 字符替换为另一个指定的 Unicode 字符,并返回新的字符串。    

28    public string Replace( string oldValue, string newValue ) 
把当前 string 对象中,所有指定的字符串替换为另一个指定的字符串,并返回新的字符串。    

29    public string[] Split( params char[] separator ) 
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。    

30    public string[] Split( char[] separator, int count ) 
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。int 参数指定要返回的子字符串的最大数目。    

31    public bool StartsWith( string value ) 
判断字符串实例的开头是否匹配指定的字符串。    

32    public char[] ToCharArray()
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组。    

33    public char[] ToCharArray( int startIndex, int length ) 
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组,从指定的索引开始,直到指定的长度为止。    

34    public string ToLower()
把字符串转换为小写并返回。    

35    public string ToUpper()
把字符串转换为大写并返回。    

36    public string Trim()
移除当前 String 对象中的所有前导空白字符和后置空白字符。    

上面的方法列表并不详尽,请访问 MSDN 库,查看完整的方法列表和 String 类构造函数。

实例

下面的实例演示了上面提到的一些方法:

比较字符串

using System;

namespace StringApplication
{
   class StringProg
   {
      static void Main(string[] args)
      {
         string str1 = "This is test";
         string str2 = "This is text";

         if (String.Compare(str1, str2) == 0)
         {
            Console.WriteLine(str1 + " and " + str2 +  " are equal.");
         }
         else
         {
            Console.WriteLine(str1 + " and " + str2 + " are not equal.");
         }
         Console.ReadKey() ;
      }
   }
}

当上面的代码被编译和执行时,它会产生下列结果:

This is test and This is text are not equal.

字符串包含字符串:

using System;

namespace StringApplication
{
   class StringProg
   {
      static void Main(string[] args)
      {
         string str = "This is test";
         if (str.Contains("test"))
         {
            Console.WriteLine("The sequence 'test' was found.");
         }
         Console.ReadKey() ;
      }
   }
}

当上面的代码被编译和执行时,它会产生下列结果:

The sequence 'test' was found.

获取子字符串:

using System;

namespace StringApplication
{
   class StringProg
   {
      static void Main(string[] args)
      {
         string str = "Last night I dreamt of San Pedro";
         Console.WriteLine(str);
         string substr = str.Substring(23);
         Console.WriteLine(substr);
      }
      Console.ReadKey() ;
   }
}

当上面的代码被编译和执行时,它会产生下列结果:

San Pedro

连接字符串:

using System;

namespace StringApplication
{
   class StringProg
   {
      static void Main(string[] args)
      {
         string[] starray = new string[]{"Down the way nights are dark",
         "And the sun shines daily on the mountain top",
         "I took a trip on a sailing ship",
         "And when I reached Jamaica",
         "I made a stop"};

         string str = String.Join("\n", starray);
         Console.WriteLine(str);
      }
      Console.ReadKey() ;
   }
}

当上面的代码被编译和执行时,它会产生下列结果:

Down the way nights are dark
And the sun shines daily on the mountain top
I took a trip on a sailing ship
And when I reached Jamaica
I made a stop


 以上就是【c#教程】C# 字符串(String)的内容,更多相关内容请关注PHP中文网(www.php.cn)!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.