Прочитать на английском

Поделиться через


CompareInfo.IsPrefix Метод

Определение

Определяет, начинается ли строка с указанного префикса.

Перегрузки

IsPrefix(String, String)

Определяет, начинается ли указанная строка источника с указанного префикса.

IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Определяет, начинается ли доступный только для чтения диапазон символов с указанного префикса.

IsPrefix(String, String, CompareOptions)

Определяет, начинается ли указанная строка источника с указанного префикса, с использованием заданного значения CompareOptions.

IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32)

Определяет, начинается ли строка с указанного префикса.

IsPrefix(String, String)

Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs

Определяет, начинается ли указанная строка источника с указанного префикса.

public virtual bool IsPrefix (string source, string prefix);
public bool IsPrefix (string source, string prefix);

Параметры

source
String

Строка, в которой выполняется поиск.

prefix
String

Строка, сравниваемая с началом source.

Возвращаемое значение

true, если длина prefix меньше или равна длине source и source начинается с prefix; в противном случае — false.

Исключения

source имеет значение null.

-или-

prefix имеет значение null.

Примеры

В следующем примере определяется, является ли строка префиксом или суффиксом другой строки.

using System;
using System.Globalization;

public class SamplesCompareInfo  {

   public static void Main()  {

      // Defines the strings to compare.
      String myStr1 = "calle";
      String myStr2 = "llegar";
      String myXfix = "lle";

      // Uses the CompareInfo property of the InvariantCulture.
      CompareInfo myComp = CultureInfo.InvariantCulture.CompareInfo;

      // Determines whether myXfix is a prefix of "calle" and "llegar".
      Console.WriteLine( "IsPrefix( {0}, {1} ) : {2}", myStr1, myXfix, myComp.IsPrefix( myStr1, myXfix ) );
      Console.WriteLine( "IsPrefix( {0}, {1} ) : {2}", myStr2, myXfix, myComp.IsPrefix( myStr2, myXfix ) );

      // Determines whether myXfix is a suffix of "calle" and "llegar".
      Console.WriteLine( "IsSuffix( {0}, {1} ) : {2}", myStr1, myXfix, myComp.IsSuffix( myStr1, myXfix ) );
      Console.WriteLine( "IsSuffix( {0}, {1} ) : {2}", myStr2, myXfix, myComp.IsSuffix( myStr2, myXfix ) );
   }
}


/*
This code produces the following output.

IsPrefix( calle, lle ) : False
IsPrefix( llegar, lle ) : True
IsSuffix( calle, lle ) : True
IsSuffix( llegar, lle ) : False

*/

Комментарии

Каждая строка начинается и заканчивается пустой подстрокой ("); Таким образом, если prefix является пустой строкой, этот метод возвращает true.

Примечание

По возможности следует вызывать методы сравнения строк, имеющие параметр типа CompareOptions , чтобы указать ожидаемый тип сравнения. Как правило, используйте лингвистические параметры (с использованием текущего языка и региональных параметров) для сравнения строк, отображаемых в пользовательском интерфейсе, и укажите CompareOptions.Ordinal или CompareOptions.OrdinalIgnoreCase для сравнения безопасности.

См. также раздел

Применяется к

IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs

Определяет, начинается ли доступный только для чтения диапазон символов с указанного префикса.

public bool IsPrefix (ReadOnlySpan<char> source, ReadOnlySpan<char> prefix, System.Globalization.CompareOptions options = System.Globalization.CompareOptions.None);

Параметры

source
ReadOnlySpan<Char>

Доступный только для чтения диапазон символов, в котором выполняется поиск.

prefix
ReadOnlySpan<Char>

Префикс, который используется для проверки на соответствие в начале source.

options
CompareOptions

Необязательное сочетание значений перечисления CompareOptions, используемое во время проверки на соответствие. Значение по умолчанию — None.

Возвращаемое значение

true, если prefix присутствует в начале source; в противном случае — false.

Исключения

options содержит неподдерживаемое сочетание флагов.

Применяется к

IsPrefix(String, String, CompareOptions)

Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs

Определяет, начинается ли указанная строка источника с указанного префикса, с использованием заданного значения CompareOptions.

public virtual bool IsPrefix (string source, string prefix, System.Globalization.CompareOptions options);
public bool IsPrefix (string source, string prefix, System.Globalization.CompareOptions options);

Параметры

source
String

Строка, в которой выполняется поиск.

prefix
String

Строка, сравниваемая с началом source.

options
CompareOptions

Значение, определяющее способ сравнения source и prefix. Параметр options является значением перечисления Ordinal, используемым самостоятельно, или побитовой комбинацией одного или нескольких следующих значений: IgnoreCase, IgnoreSymbols, IgnoreNonSpace, IgnoreWidth и IgnoreKanaType.

Возвращаемое значение

true, если длина prefix меньше или равна длине source и source начинается с prefix; в противном случае — false.

Исключения

source имеет значение null.

-или-

prefix имеет значение null.

options содержит недопустимое значение CompareOptions.

Примеры

В следующем примере определяется, является ли строка префиксом или суффиксом другой строки с помощью CompareOptions.

using System;
using System.Globalization;

public class SamplesCompareInfo  {

   public static void Main()  {

      // Defines the strings to compare.
      String myStr1 = "calle";
      String myStr2 = "llegar";
      String myXfix = "LLE";

      // Uses the CompareInfo property of the InvariantCulture.
      CompareInfo myComp = CultureInfo.InvariantCulture.CompareInfo;

      Console.WriteLine( "IsSuffix \"{0}\", \"{1}\"", myStr1, myXfix );
      Console.WriteLine( "   With no CompareOptions            : {0}", myComp.IsSuffix( myStr1, myXfix ) );
      Console.WriteLine( "   With None                         : {0}", myComp.IsSuffix( myStr1, myXfix, CompareOptions.None ) );
      Console.WriteLine( "   With Ordinal                      : {0}", myComp.IsSuffix( myStr1, myXfix, CompareOptions.Ordinal ) );
      Console.WriteLine( "   With IgnoreCase                   : {0}", myComp.IsSuffix( myStr1, myXfix, CompareOptions.IgnoreCase ) );

      Console.WriteLine( "IsPrefix \"{0}\", \"{1}\"", myStr2, myXfix );
      Console.WriteLine( "   With no CompareOptions            : {0}", myComp.IsPrefix( myStr2, myXfix ) );
      Console.WriteLine( "   With None                         : {0}", myComp.IsPrefix( myStr2, myXfix, CompareOptions.None ) );
      Console.WriteLine( "   With Ordinal                      : {0}", myComp.IsPrefix( myStr2, myXfix, CompareOptions.Ordinal ) );
      Console.WriteLine( "   With IgnoreCase                   : {0}", myComp.IsPrefix( myStr2, myXfix, CompareOptions.IgnoreCase ) );
   }
}


/*
This code produces the following output.

IsSuffix "calle", "LLE"
   With no CompareOptions            : False
   With None                         : False
   With Ordinal                      : False
   With IgnoreCase                   : True
IsPrefix "llegar", "LLE"
   With no CompareOptions            : False
   With None                         : False
   With Ordinal                      : False
   With IgnoreCase                   : True

*/

Комментарии

Каждая строка начинается и заканчивается пустой подстрокой ("); Таким образом, если prefix является пустой строкой, этот метод возвращает true.

Недопустимое CompareOptions.StringSort значение для этого метода.

Примечание

По возможности следует вызывать методы сравнения строк, имеющие параметр типа CompareOptions , чтобы указать ожидаемый тип сравнения. Как правило, используйте лингвистические параметры (с использованием текущего языка и региональных параметров) для сравнения строк, отображаемых в пользовательском интерфейсе, и укажите CompareOptions.Ordinal или CompareOptions.OrdinalIgnoreCase для сравнения безопасности.

См. также раздел

Применяется к

IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32)

Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs
Исходный код:
CompareInfo.cs

Определяет, начинается ли строка с указанного префикса.

public bool IsPrefix (ReadOnlySpan<char> source, ReadOnlySpan<char> prefix, System.Globalization.CompareOptions options, out int matchLength);

Параметры

source
ReadOnlySpan<Char>

Доступный только для чтения диапазон символов, в котором выполняется поиск.

prefix
ReadOnlySpan<Char>

Диапазон символов только для чтения, содержащий префикс для проверки на соответствие в начале source.

options
CompareOptions

CompareOptions для использования при сопоставлении.

matchLength
Int32

При возврате этот метод содержит число символов из source, которые совпали с нужным префиксом. Совпадения могут иметь разную с prefix длину, если было выполнено лингвистическое сравнение. Задайте значение 0, если префикс не совпал.

Возвращаемое значение

true, если prefix присутствует в начале source; в противном случае — false.

Исключения

options содержит неподдерживаемое сочетание флагов.

Комментарии

Этот метод имеет большую нагрузку, чем другие IsPrefix(String, String, CompareOptions) перегрузки, которые не принимают matchLength аргумент. Вызывайте эту перегрузку, только если требуются сведения о длине соответствия.

Применяется к