CompareInfo.IsSuffix Метод

Определение

Определяет, заканчивается ли строка указанным суффиксом.Determines whether a string ends with a specific suffix.

Перегрузки

IsSuffix(String, String)

Определяет, заканчивается ли указанная строка источника указанным суффиксом.Determines whether the specified source string ends with the specified suffix.

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

Определяет, заканчивается ли доступный только для чтения диапазон символов указанным суффиксом.Determines whether a read-only span of characters ends with a specific suffix.

IsSuffix(String, String, CompareOptions)

Определяет, заканчивается ли указанная строка источника указанным суффиксом, с использованием заданного значения CompareOptions.Determines whether the specified source string ends with the specified suffix using the specified CompareOptions value.

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

Определяет, заканчивается ли строка указанным суффиксом.Determines whether a string ends with a specific suffix.

IsSuffix(String, String)

Определяет, заканчивается ли указанная строка источника указанным суффиксом.Determines whether the specified source string ends with the specified suffix.

public:
 virtual bool IsSuffix(System::String ^ source, System::String ^ suffix);
public:
 bool IsSuffix(System::String ^ source, System::String ^ suffix);
public virtual bool IsSuffix (string source, string suffix);
public bool IsSuffix (string source, string suffix);
abstract member IsSuffix : string * string -> bool
override this.IsSuffix : string * string -> bool
member this.IsSuffix : string * string -> bool
Public Overridable Function IsSuffix (source As String, suffix As String) As Boolean
Public Function IsSuffix (source As String, suffix As String) As Boolean

Параметры

source
String

Строка, в которой выполняется поиск.The string to search in.

suffix
String

Строка, сравниваемая с концом source.The string to compare with the end of source.

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

Boolean

true, если длина suffix меньше или равна длине source и source заканчивается suffix; в противном случае — false.true if the length of suffix is less than or equal to the length of source and source ends with suffix; otherwise, false.

Исключения

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

- или --or-

suffix имеет значение null.suffix is null.

Примеры

В следующем примере определяется, является ли строка префиксом или суффиксом другой строки.The following example determines whether a string is the prefix or suffix of another string.

using namespace System;
using namespace System::Globalization;
int 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 S"calle" and S"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 S"calle" and S"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

*/
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

*/
Imports System.Globalization

Public Class SamplesCompareInfo

   Public Shared Sub Main()

      ' Defines the strings to compare.
      Dim myStr1 As [String] = "calle"
      Dim myStr2 As [String] = "llegar"
      Dim myXfix As [String] = "lle"

      ' Uses the CompareInfo property of the InvariantCulture.
      Dim myComp As CompareInfo = 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))

   End Sub

End Class


'This code produces the following output.
'
'IsPrefix( calle, lle ) : False
'IsPrefix( llegar, lle ) : True
'IsSuffix( calle, lle ) : True
'IsSuffix( llegar, lle ) : False

Комментарии

Каждая строка начинается и заканчивается пустой подстрокой (""); Таким образом, если suffix является пустой строкой, этот метод возвращает true .Every string starts and ends with an empty substring (""); therefore, if suffix is an empty string, this method returns true.

Примечание

По возможности следует вызывать методы сравнения строк, имеющие параметр типа, CompareOptions чтобы указать тип ожидаемого сравнения.When possible, you should call string comparison methods that have a parameter of type CompareOptions to specify the kind of comparison expected. В качестве общего правила используйте лингвистические параметры (с использованием текущего языка и региональных параметров) для сравнения строк, отображаемых в пользовательском интерфейсе, и укажите CompareOptions.Ordinal или CompareOptions.OrdinalIgnoreCase для сравнения безопасности.As a general rule, use linguistic options (using the current culture) for comparing strings displayed in the user interface and specify CompareOptions.Ordinal or CompareOptions.OrdinalIgnoreCase for security comparisons.

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

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

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

Определяет, заканчивается ли доступный только для чтения диапазон символов указанным суффиксом.Determines whether a read-only span of characters ends with a specific suffix.

public bool IsSuffix (ReadOnlySpan<char> source, ReadOnlySpan<char> suffix, System.Globalization.CompareOptions options = System.Globalization.CompareOptions.None);
member this.IsSuffix : ReadOnlySpan<char> * ReadOnlySpan<char> * System.Globalization.CompareOptions -> bool
Public Function IsSuffix (source As ReadOnlySpan(Of Char), suffix As ReadOnlySpan(Of Char), Optional options As CompareOptions = System.Globalization.CompareOptions.None) As Boolean

Параметры

source
ReadOnlySpan<Char>

Доступный только для чтения диапазон символов, в котором выполняется поиск.The read-only span of characters to search within.

suffix
ReadOnlySpan<Char>

Суффикс, который используется для проверки на соответствие в конце source.The suffix to attempt to match at the end of source.

options
CompareOptions

Необязательное сочетание значений перечисления CompareOptions, используемое во время проверки на соответствие.An optional combination of CompareOptions enumeration values to use during the match. Значение по умолчанию — None.The default value is None.

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

Boolean

true, если suffix присутствует в конце source; в противном случае — false.true if suffix occurs at the end of source; otherwise, false.

Исключения

options содержит неподдерживаемое сочетание флагов.options contains an unsupported combination of flags.

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

IsSuffix(String, String, CompareOptions)

Определяет, заканчивается ли указанная строка источника указанным суффиксом, с использованием заданного значения CompareOptions.Determines whether the specified source string ends with the specified suffix using the specified CompareOptions value.

public:
 virtual bool IsSuffix(System::String ^ source, System::String ^ suffix, System::Globalization::CompareOptions options);
public:
 bool IsSuffix(System::String ^ source, System::String ^ suffix, System::Globalization::CompareOptions options);
public virtual bool IsSuffix (string source, string suffix, System.Globalization.CompareOptions options);
public bool IsSuffix (string source, string suffix, System.Globalization.CompareOptions options);
abstract member IsSuffix : string * string * System.Globalization.CompareOptions -> bool
override this.IsSuffix : string * string * System.Globalization.CompareOptions -> bool
member this.IsSuffix : string * string * System.Globalization.CompareOptions -> bool
Public Overridable Function IsSuffix (source As String, suffix As String, options As CompareOptions) As Boolean
Public Function IsSuffix (source As String, suffix As String, options As CompareOptions) As Boolean

Параметры

source
String

Строка, в которой выполняется поиск.The string to search in.

suffix
String

Строка, сравниваемая с концом source.The string to compare with the end of source.

options
CompareOptions

Значение, определяющее способ сравнения source и suffix.A value that defines how source and suffix should be compared. Параметр options является значением перечисления Ordinal, используемым самостоятельно, или побитовой комбинацией одного или нескольких следующих значений: IgnoreCase, IgnoreSymbols, IgnoreNonSpace, IgnoreWidth и IgnoreKanaType.options is either the enumeration value Ordinal used by itself, or the bitwise combination of one or more of the following values: IgnoreCase, IgnoreSymbols, IgnoreNonSpace, IgnoreWidth, and IgnoreKanaType.

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

Boolean

true, если длина suffix меньше или равна длине source и source заканчивается suffix; в противном случае — false.true if the length of suffix is less than or equal to the length of source and source ends with suffix; otherwise, false.

Исключения

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

- или --or-

suffix имеет значение null.suffix is null.

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

Примеры

В следующем примере определяется, является ли строка префиксом или суффиксом другой строки с помощью CompareOptions .The following example determines whether a string is the prefix or suffix of another string using CompareOptions.

using namespace System;
using namespace System::Globalization;
int 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
*/
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

*/
Imports System.Globalization

Public Class SamplesCompareInfo

   Public Shared Sub Main()

      ' Defines the strings to compare.
      Dim myStr1 As [String] = "calle"
      Dim myStr2 As [String] = "llegar"
      Dim myXfix As [String] = "LLE"

      ' Uses the CompareInfo property of the InvariantCulture.
      Dim myComp As CompareInfo = 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))

   End Sub

End Class


'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

Комментарии

Каждая строка начинается и заканчивается пустой подстрокой (""); Таким образом, если suffix является пустой строкой, этот метод возвращает true .Every string starts and ends with an empty substring (""); therefore, if suffix is an empty string, this method returns true.

Значение недопустимо CompareOptions.StringSort для этого метода.The CompareOptions.StringSort value is not valid for this method.

Примечание

По возможности следует вызывать методы сравнения строк, имеющие параметр типа, CompareOptions чтобы указать тип ожидаемого сравнения.When possible, you should call string comparison methods that have a parameter of type CompareOptions to specify the kind of comparison expected. В качестве общего правила используйте лингвистические параметры (с использованием текущего языка и региональных параметров) для сравнения строк, отображаемых в пользовательском интерфейсе, и укажите CompareOptions.Ordinal или CompareOptions.OrdinalIgnoreCase для сравнения безопасности.As a general rule, use linguistic options (using the current culture) for comparing strings displayed in the user interface and specify CompareOptions.Ordinal or CompareOptions.OrdinalIgnoreCase for security comparisons.

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

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

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

Определяет, заканчивается ли строка указанным суффиксом.Determines whether a string ends with a specific suffix.

public:
 bool IsSuffix(ReadOnlySpan<char> source, ReadOnlySpan<char> suffix, System::Globalization::CompareOptions options, [Runtime::InteropServices::Out] int % matchLength);
public bool IsSuffix (ReadOnlySpan<char> source, ReadOnlySpan<char> suffix, System.Globalization.CompareOptions options, out int matchLength);
member this.IsSuffix : ReadOnlySpan<char> * ReadOnlySpan<char> * System.Globalization.CompareOptions * int -> bool
Public Function IsSuffix (source As ReadOnlySpan(Of Char), suffix As ReadOnlySpan(Of Char), options As CompareOptions, ByRef matchLength As Integer) As Boolean

Параметры

source
ReadOnlySpan<Char>

Доступный только для чтения диапазон символов, в котором выполняется поиск.The read-only span of characters to search within.

suffix
ReadOnlySpan<Char>

Диапазон символов только для чтения, содержащий суффикс для проверки на соответствие в конце source.The read-only span of characters containing the suffix to attempt to match at the end of source.

options
CompareOptions

CompareOptions для использования при сопоставлении.The CompareOptions to use during the match.

matchLength
Int32

При возврате этот метод содержит число символов из source, которые совпали с нужным суффиксом.When this method returns, contains the number of characters of source that matched the desired suffix. Совпадения могут иметь разную с suffix длину, если было выполнено лингвистическое сравнение.This may be different than the length of suffix if a linguistic comparison is performed. Задайте значение 0, если суффикс не совпал.Set to 0 if the suffix did not match.

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

Boolean

true, если suffix присутствует в конце source; в противном случае — false.true if suffix occurs at the end of source; otherwise, false.

Исключения

options содержит неподдерживаемое сочетание флагов.options contains an unsupported combination of flags.

Комментарии

Этот метод имеет больше издержек, чем другие IsSuffix(String, String, CompareOptions) перегрузки, которые не принимают matchLength аргумент.This method has greater overhead than other IsSuffix(String, String, CompareOptions) overloads that don't take a matchLength argument. Вызывайте эту перегрузку только в том случае, если требуются сведения о длине соответствия.Call this overload only if you require the match length information.

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