NSComparisonPredicate
NSComparisonPredicate
подкласс NSPredicate
то, что Вы используете для сравнения выражений.
Вы используете предикаты сравнения для сравнения результатов двух выражений. Вы создаете предикат сравнения с оператором, левым выражением и правильным выражением. Вы представляете выражения с помощью экземпляров NSExpression
класс. При оценке предиката он возвращается как a BOOL
оцените результат вызова оператора с результатами оценки выражений.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSObjectProtocol
-
NSSecureCoding
-
Печатаемый
-
NSCopying
-
NSObject
-
NSSecureCoding
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 и позже.
-
predicateWithLeftExpression:rightExpression:customSelector: + predicateWithLeftExpression:rightExpression:customSelector:
Возвращает новый предикат, сформированный путем объединения левых и правых выражений с помощью данного селектора.
Объявление
Objective C
+ (NSComparisonPredicate *)predicateWithLeftExpression:(NSExpression *)
lhs
rightExpression:(NSExpression *)rhs
customSelector:(SEL)selector
Параметры
lhs
Выражение левой стороны.
rhs
Выражение правой стороны.
selector
Селектор для использования для сравнения. Метод, определенный селектором, должен взять отдельный аргумент и возвратить a
BOOL
значение.Возвращаемое значение
Новый предикат, сформированный путем объединения левого и правого использования выражений
selector
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 и позже.
-
predicateWithLeftExpression:rightExpression:modifier:type:options: + predicateWithLeftExpression:rightExpression:modifier:type:options:
Создает и возвращает предикат данного типа, сформированного путем объединения данный левые и правые выражения с помощью данного модификатора и опций.
Объявление
Objective C
+ (NSComparisonPredicate *)predicateWithLeftExpression:(NSExpression *)
lhs
rightExpression:(NSExpression *)rhs
modifier:(NSComparisonPredicateModifier)modifier
type:(NSPredicateOperatorType)type
options:(NSComparisonPredicateOptions)options
Параметры
lhs
Левое выражение.
rhs
Правое выражение.
modifier
Модификатор для применения.
type
Тип оператора предиката.
options
Опции применяться (см. Опции NSComparisonPredicate). Ни для каких опций, передачи
0
.Возвращаемое значение
Новый предикат типа
type
сформированный путем объединения данных левых и правых выражений с помощьюmodifier
иoptions
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 и позже.
-
init (leftExpression:rightExpression:customSelector:) - initWithLeftExpression:rightExpression:customSelector:
Инициализирует предикат, сформированный путем объединения данный левые и правые выражения с помощью данного селектора.
Объявление
Swift
init(leftExpression
lhs
: NSExpression, rightExpressionrhs
: NSExpression, customSelectorselector
: Selector)Objective C
- (instancetype)initWithLeftExpression:(NSExpression *)
lhs
rightExpression:(NSExpression *)rhs
customSelector:(SEL)selector
Параметры
lhs
Левое выражение.
rhs
Правое выражение.
selector
Селектор для использования. Метод, определенный селектором, должен взять отдельный аргумент и возвратить a
BOOL
значение.Возвращаемое значение
Получатель, инициализированный путем объединения левого и правого использования выражений
selector
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
init (leftExpression:rightExpression:modifier:type:options:) - initWithLeftExpression:rightExpression:modifier:type:options:
Инициализирует предикат к данному типу, сформированному путем объединения данный левые и правые выражения с помощью данного модификатора и опций.
Объявление
Swift
init(leftExpression
lhs
: NSExpression, rightExpressionrhs
: NSExpression, modifiermodifier
: NSComparisonPredicateModifier, typetype
: NSPredicateOperatorType, optionsoptions
: NSComparisonPredicateOptions)Objective C
- (instancetype)initWithLeftExpression:(NSExpression *)
lhs
rightExpression:(NSExpression *)rhs
modifier:(NSComparisonPredicateModifier)modifier
type:(NSPredicateOperatorType)type
options:(NSComparisonPredicateOptions)options
Параметры
lhs
Левое выражение.
rhs
Правое выражение.
modifier
Модификатор для применения.
type
Тип оператора предиката.
options
Опции применяться (см. Опции NSComparisonPredicate). Ни для каких опций, передачи
0
.Возвращаемое значение
Получатель, инициализированный к предикату типа
type
сформированный путем объединения левых и правых выражений с помощьюmodifier
иoptions
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Модификатор предиката сравнения для получателя. (только для чтения)
Объявление
Swift
var comparisonPredicateModifier: NSComparisonPredicateModifier { get }
Objective C
@property(readonly) NSComparisonPredicateModifier comparisonPredicateModifier
Обсуждение
Значение по умолчанию
NSDirectPredicateModifier
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
customSelector customSelector
СвойствоСелектор для получателя. (только для чтения)
Объявление
Swift
var customSelector: Selector { get }
Objective C
@property(readonly) SEL customSelector
Обсуждение
NULL
если нет ни одного.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
rightExpression rightExpression
СвойствоПравильное выражение для получателя. (только для чтения)
Объявление
Swift
var rightExpression: NSExpression { get }
Objective C
@property(readonly, retain) NSExpression *rightExpression
Обсуждение
nil
если нет ни одного.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
leftExpression leftExpression
СвойствоОставленное выражение для получателя. (только для чтения)
Объявление
Swift
var leftExpression: NSExpression { get }
Objective C
@property(readonly, retain) NSExpression *leftExpression
Обсуждение
nil
если нет ни одного.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Опции, установленные для получателя. (только для чтения)
Объявление
Swift
var options: NSComparisonPredicateOptions { get }
Objective C
@property(readonly) NSComparisonPredicateOptions options
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Тип предиката для получателя. (только для чтения)
Объявление
Swift
var predicateOperatorType: NSPredicateOperatorType { get }
Objective C
@property(readonly) NSPredicateOperatorType predicateOperatorType
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
Типы данных
-
Эти константы описывают возможные типы модификатора для
NSComparisonPredicate
.Объявление
Swift
enum NSComparisonPredicateModifier : UInt { case DirectPredicateModifier case AllPredicateModifier case AnyPredicateModifier }
Objective C
enum { NSDirectPredicateModifier = 0, NSAllPredicateModifier, NSAnyPredicateModifier, }; typedef NSUInteger NSComparisonPredicateModifier;
Константы
-
DirectPredicateModifier
NSDirectPredicateModifier
Предикат для сравнения непосредственно левых и правых ручных сторон.
Доступный в OS X v10.4 и позже.
-
AllPredicateModifier
NSAllPredicateModifier
Предикат для сравнения всех записей в месте назначения к - многие отношение.
Левая сторона должна быть набором. Соответствующий предикат сравнивает каждое значение в левой стороне с правой стороной и возвраты
NO
false
когда это находит первое несоответствие — илиYES
true
если все соответствие.Доступный в OS X v10.4 и позже.
-
AnyPredicateModifier
NSAnyPredicateModifier
Предикат для соответствия с любой записью в месте назначения к - многие отношение.
Левая сторона должна быть набором. Соответствующий предикат сравнивает каждое значение в левой стороне против правой стороны и возвратов
YES
true
когда это находит первое соответствие — илиNO
false
если не найдено никакое соответствиеДоступный в OS X v10.4 и позже.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
-
Эти константы описывают возможные типы сравнения строк для
NSComparisonPredicate
. Эти опции поддерживаются дляLIKE
а также все равенство/операторы сравнения.Объявление
Swift
struct NSComparisonPredicateOptions : RawOptionSetType { init(_
rawValue
: UInt) init(rawValuerawValue
: UInt) static var CaseInsensitivePredicateOption: NSComparisonPredicateOptions { get } static var DiacriticInsensitivePredicateOption: NSComparisonPredicateOptions { get } static var NormalizedPredicateOption: NSComparisonPredicateOptions { get } }Objective C
enum { NSCaseInsensitivePredicateOption = 0x01, NSDiacriticInsensitivePredicateOption = 0x02, NSNormalizedPredicateOption = 0x04, NSLocaleSensitivePredicateOption = 0x08 }; typedef NSUInteger NSComparisonPredicateOptions;
Константы
-
CaseInsensitivePredicateOption
NSCaseInsensitivePredicateOption
Нечувствительный к регистру предикат.
Вы представляете эту опцию в строке формата предиката с помощью a
[c]
после строковой операции (например,"NeXT" like[c] "next"
).Доступный в OS X v10.4 и позже.
-
DiacriticInsensitivePredicateOption
NSDiacriticInsensitivePredicateOption
Нечувствительный к диакритическому знаку предикат.
Вы представляете эту опцию в строке формата предиката с помощью a
[d]
после строковой операции (например,"naïve" like[d] "naive"
).Доступный в OS X v10.4 и позже.
-
NormalizedPredicateOption
NSNormalizedPredicateOption
Указывает, что были предварительно обработаны строки, которые будут сравнены.
Эта опция заменяет
NSCaseInsensitivePredicateOption
иNSDiacriticInsensitivePredicateOption
, и предназначается как опция оптимизации производительности.Вы представляете эту опцию в строке формата предиката с помощью a
[n]
после строковой операции (например,"WXYZlan" matches[n] ".lan"
).Доступный в OS X v10.6 и позже.
-
NSLocaleSensitivePredicateOption
NSLocaleSensitivePredicateOption
Указывает что строки, которые будут сравнены с помощью
<
,<=
,=
,=>
,>
должен быть обработан осведомленным о локали способом.Вы представляете эту опцию в строке формата предиката с помощью a
[l]
после одного из<
,<=
,=
,=>
,>
операторы (например,"straße" >[l] "strasse"
).
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.7 и позже.
-
-
Определяет тип сравнения для
NSComparisonPredicate
.Объявление
Swift
enum NSPredicateOperatorType : UInt { case LessThanPredicateOperatorType case LessThanOrEqualToPredicateOperatorType case GreaterThanPredicateOperatorType case GreaterThanOrEqualToPredicateOperatorType case EqualToPredicateOperatorType case NotEqualToPredicateOperatorType case MatchesPredicateOperatorType case LikePredicateOperatorType case BeginsWithPredicateOperatorType case EndsWithPredicateOperatorType case InPredicateOperatorType case CustomSelectorPredicateOperatorType case ContainsPredicateOperatorType case BetweenPredicateOperatorType }
Objective C
enum { NSLessThanPredicateOperatorType = 0, NSLessThanOrEqualToPredicateOperatorType, NSGreaterThanPredicateOperatorType, NSGreaterThanOrEqualToPredicateOperatorType, NSEqualToPredicateOperatorType, NSNotEqualToPredicateOperatorType, NSMatchesPredicateOperatorType, NSLikePredicateOperatorType, NSBeginsWithPredicateOperatorType, NSEndsWithPredicateOperatorType, NSInPredicateOperatorType, NSCustomSelectorPredicateOperatorType, NSContainsPredicateOperatorType, NSBetweenPredicateOperatorType }; typedef NSUInteger NSPredicateOperatorType;
Константы
-
LessThanPredicateOperatorType
NSLessThanPredicateOperatorType
Меньше предикат.
Доступный в OS X v10.4 и позже.
-
LessThanOrEqualToPredicateOperatorType
NSLessThanOrEqualToPredicateOperatorType
Меньше, чем или равный предикату.
Доступный в OS X v10.4 и позже.
-
GreaterThanPredicateOperatorType
NSGreaterThanPredicateOperatorType
Большее - чем предикат.
Доступный в OS X v10.4 и позже.
-
GreaterThanOrEqualToPredicateOperatorType
NSGreaterThanOrEqualToPredicateOperatorType
Большее, чем или равный предикату.
Доступный в OS X v10.4 и позже.
-
EqualToPredicateOperatorType
NSEqualToPredicateOperatorType
Равное - к предикату.
Доступный в OS X v10.4 и позже.
-
NotEqualToPredicateOperatorType
NSNotEqualToPredicateOperatorType
Предикат «не равняется».
Доступный в OS X v10.4 и позже.
-
MatchesPredicateOperatorType
NSMatchesPredicateOperatorType
Полный предикат соответствия регулярного выражения.
Доступный в OS X v10.4 и позже.
-
LikePredicateOperatorType
NSLikePredicateOperatorType
Простое подмножество предиката MATCHES, подобного в поведении к SQL
LIKE
.Доступный в OS X v10.4 и позже.
-
BeginsWithPredicateOperatorType
NSBeginsWithPredicateOperatorType
Начинается с предиката.
Доступный в OS X v10.4 и позже.
-
EndsWithPredicateOperatorType
NSEndsWithPredicateOperatorType
Концы - с предикатом.
Доступный в OS X v10.4 и позже.
-
InPredicateOperatorType
NSInPredicateOperatorType
Предикат, чтобы определить, находится ли левая сторона в правой стороне.
Для строк, возвратов
YES
true
если левая сторона является подстрокой правой стороны. Для наборов, возвратовYES
true
если левая сторона находится в правой стороне.Доступный в OS X v10.4 и позже.
-
CustomSelectorPredicateOperatorType
NSCustomSelectorPredicateOperatorType
Предикат, использующий пользовательский селектор, берущий отдельный аргумент и возвращающий a
BOOL
значение.Селектор вызывается на левой стороне с правой стороной как параметр.
Доступный в OS X v10.4 и позже.
-
ContainsPredicateOperatorType
NSContainsPredicateOperatorType
Предикат, чтобы определить, содержит ли левая сторона правую сторону.
Возвраты
YES
true
если[lhs contains rhs]
; левая сторона должна бытьNSExpression
объект, оценивающий к наборуДоступный в OS X v10.5 и позже.
-
BetweenPredicateOperatorType
NSBetweenPredicateOperatorType
Предикат, чтобы определить, находится ли правая сторона в или между границами, указанными левой стороной.
Возвраты
YES
true
если[lhs between rhs]
; правая сторона должна быть массивом, в котором первый элемент устанавливает нижнюю границу и второй элемент верхнее, включительно. Сравнение выполняется с помощью, выдержите сравнение: или надлежащий классу эквивалент.Доступный в OS X v10.5 и позже.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-