NSScanner
NSScanner
класс является абстрактным суперклассом кластера класса, объявляющего программируемый интерфейс для объекта, сканирующего значения от NSString
объект.
NSScanner
объект интерпретирует и преобразовывает символы NSString
объект в число и строковые значения. Вы присваиваете строку сканера при создании его, и сканер развивается через символы той строки с начала до конца, поскольку Вы запрашиваете элементы.
Из-за природы кластеров класса объекты сканера не являются фактическими экземплярами NSScanner
класс, но один из его частных подклассов. Несмотря на то, что класс объекта сканера является частным, его интерфейс общедоступен, как объявлено этим абстрактным суперклассом, NSScanner
. Примитивные методы NSScanner
string
и все методы, перечисленные при Конфигурировании Сканера. Объекты Вы создаете использование этого класса, упоминаются, поскольку сканер возражает (и когда никакой беспорядок не закончится, просто как сканеры).
Можно установить NSScanner
объект проигнорировать ряд изображает, поскольку это сканирует строку с помощью charactersToBeSkipped
свойство. Через символы в наборе пропуска перескакивают прежде, чем отсканировать цель. Набор по умолчанию символов для пропуска является набором символа новой строки и пробельным символом.
Для получения неотсканированного остатка от строки использовать [[scanner string]
substringFromIndex:
[scanner scanLocation]]
.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCopying
-
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты
NSScanner
возразите, что сканирует данную строку.Объявление
Objective C
+ (instancetype)scannerWithString:(NSString *)
aString
Параметры
aString
Строка для сканирования.
Возвращаемое значение
NSScanner
возразите что сканированияaString
.Обсуждение
Устанавливает строку для сканирования путем вызова
initWithString:
сaString
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты
NSScanner
возразите, что сканирует данную строку согласно локали пользователя по умолчанию.Объявление
Swift
class func localizedScannerWithString(_
aString
: String) -> AnyObjectObjective C
+ (id)localizedScannerWithString:(NSString *)
aString
Параметры
aString
Строка для сканирования.
Возвращаемое значение
NSScanner
возразите что сканированияaString
согласно локали пользователя по умолчанию.Обсуждение
Устанавливает строку для сканирования путем вызова
initWithString:
сaString
. Локаль установлена сsetLocale:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
init (строка:) - initWithString:
Определяемый инициализаторВозвраты
NSScanner
объект, инициализированный для сканирования данной строки.Объявление
Swift
init(string
aString
: String)Objective C
- (instancetype)initWithString:(NSString *)
aString
Параметры
aString
Строка для сканирования.
Возвращаемое значение
NSScanner
объект, инициализированный для сканированияaString
с начала. Возвращенный объект мог бы отличаться, чем исходный получатель.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
scanLocation scanLocation
СвойствоПозиция символа, в которой получатель начнет свою следующую работу сканирования.
Обсуждение
Повышения
NSRangeException
еслиindex
вне конца отсканированной строки.Это свойство полезно для поддержки, чтобы повторно отсканировать после ошибки.
Вместо того, чтобы устанавливать расположение сканирования непосредственно для пропуска известных последовательностей символов использовать
scanString:intoString:
илиscanCharactersFromSet:intoString:
, которые позволяют Вам проверять, что фактически присутствует ожидаемая подстрока (или набор символов).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Флаг, указывающий, отличает ли получатель случай в символах, которые это сканирует.
Объявление
Swift
var caseSensitive: Bool
Objective C
@property BOOL caseSensitive
Обсуждение
YES
true
если получатель отличает случай в символах, это сканирует, иначеNO
false
. Значение по умолчаниюNO
false
. Обратите внимание на то, что чувствительность к регистру не применяется к символам, которые будут пропущены.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Набор символов, содержащий символы сканер, игнорирует при поиске поддающегося сканированию элемента.
Объявление
Swift
@NSCopying var charactersToBeSkipped: NSCharacterSet?
Objective C
@property(copy) NSCharacterSet *charactersToBeSkipped
Обсуждение
Символы, которые будут пропущены, пропускаются до сканера, исследующего цель. Например, если сканер игнорирует пробелы, и Вы отправляете ему a
scanInt:
сообщение, это пропускает пробелы, пока это не находит десятичную цифру или другой символ. В то время как элемент сканируется, никакие символы не пропускаются. Если Вы сканируете для чего-то сделанного из символов в наборе, который будет пропущен (например, с помощьюscanInt:
когда набор символов, которые будут пропущены, является десятичными цифрами), результат не определен.Символы, которые будут пропущены, обрабатываются как единственные значения. Сканер не применяет свою установку чувствительности к регистру в эти символы и не пытается соответствовать составленные последовательности символов чему-либо в наборе символов, которые будут пропущены (хотя это действительно соответствует предварительно составленные символы индивидуально). Если Вы хотите пропустить все гласные при сканировании строки, например, можно установить символы, которые будут пропущены тем в строке «AEIOUaeiou» (плюс любые варианты с диакритическим знаком с предсоставленными символами).
Набор по умолчанию для пропуска является набором символа новой строки и пробельным символом.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
whitespaceAndNewlineCharacterSet
(NSCharacterSet
) -
Локаль для использования при сканировании.
Объявление
Swift
var locale: AnyObject?
Objective C
@property(retain) id locale
Обсуждение
Локаль сканера влияет на способ, которым она интерпретирует числовые значения от строки. В частности сканер использует десятичный разделитель локали для различения целых и дробных частей представлений с плавающей точкой. Сканер без локали установил нелокализованные значения использования. Новые сканеры не имеют никакой локали по умолчанию.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Сканирует строку, пока с символами от данного набора символов встречаются, накапливая символы в строку это возвращается ссылкой.
Объявление
Swift
func scanCharactersFromSet(_
scanSet
: NSCharacterSet, intoStringstringValue
: AutoreleasingUnsafeMutablePointer<NSString?>) -> BoolObjective C
- (BOOL)scanCharactersFromSet:(NSCharacterSet *)
scanSet
intoString:(NSString **)stringValue
Параметры
scanSet
Набор символов для сканирования.
stringValue
По возврату, содержит отсканированные символы.
Возвращаемое значение
YES
true
если получатель отсканировал какие-либо символы, иначеNO
false
.Обсуждение
Вызовите этот метод с
NULL
какstringValue
просто отсканировать мимо данного набора символов.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Сканирует строку, пока с символом от данного набора символов не встречаются, накапливая символы в строку, это возвращается ссылкой.
Объявление
Swift
func scanUpToCharactersFromSet(_
stopSet
: NSCharacterSet, intoStringstringValue
: AutoreleasingUnsafeMutablePointer<NSString?>) -> BoolObjective C
- (BOOL)scanUpToCharactersFromSet:(NSCharacterSet *)
stopSet
intoString:(NSString **)stringValue
Параметры
stopSet
Набор символов, до которых можно отсканировать.
stringValue
По возврату, содержит отсканированные символы.
Возвращаемое значение
YES
true
если получатель отсканировал какие-либо символы, иначеNO
false
.Если единственные отсканированные символы находятся в
charactersToBeSkipped
набор символов (который является пробельным символом и набором символа новой строки по умолчанию), затем возвращаетсяNO
false
.Обсуждение
Вызовите этот метод с
NULL
какstringValue
просто отсканировать до данного набора символов.Если никакие символы в
stopSet
присутствуют в исходной строке сканера, остаток от исходной строки помещается вstringValue
, получательscanLocation
совершенствуется до конца исходной строки и возвратов методаYES
true
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Сканирования для
NSDecimal
значение, возвращая найденное значение ссылкой.Объявление
Swift
func scanDecimal(_
decimalValue
: COpaquePointer) -> BoolObjective C
- (BOOL)scanDecimal:(NSDecimal *)
decimalValue
Параметры
decimalValue
По возврату, содержит отсканированное значение. Посмотрите
NSDecimalNumber
спецификация класса для получения дополнительной информации оNSDecimal
значения.Возвращаемое значение
YES
true
если получатель находит допустимоеNSDecimal
представление, иначеNO
false
.Обсуждение
Вызовите этот метод с
NULL
какdecimalValue
просто отсканировать мимоNSDecimal
представление.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Сканирования для двойного значения, возвращая найденное значение ссылкой.
Объявление
Swift
func scanDouble(_
doubleValue
: UnsafeMutablePointer<Double>) -> BoolObjective C
- (BOOL)scanDouble:(double *)
doubleValue
Параметры
doubleValue
По возврату, содержит отсканированное значение. Содержит
HUGE_VAL
или–HUGE_VAL
на переполнении, или0.0
на потере значимости.Возвращаемое значение
YES
true
если получатель находит допустимое представление с плавающей точкой, иначеNO
false
. Переполнение или потерю значимости оба считают допустимыми представлениями с плавающей точкой.Обсуждение
Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция сканера проходит все представление с плавающей точкой.
Вызовите этот метод с
NULL
какdoubleValue
просто отсканировать мимо двойного представления значения. Представлениями с плавающей точкой, как предполагается, является совместимый IEEE.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
doubleValue
(NSString
) -
Сканирования для значения плавающего, возвращая найденное значение ссылкой.
Объявление
Swift
func scanFloat(_
floatValue
: UnsafeMutablePointer<Float>) -> BoolObjective C
- (BOOL)scanFloat:(float *)
floatValue
Параметры
floatValue
По возврату, содержит отсканированное значение. Содержит
HUGE_VAL
или–HUGE_VAL
на переполнении, или0.0
на потере значимости.Возвращаемое значение
YES
true
если получатель находит допустимое представление с плавающей точкой, иначеNO
false
. Переполнение или потерю значимости оба считают допустимыми представлениями с плавающей точкой.Обсуждение
Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция сканера проходит все представление с плавающей точкой.
Вызовите этот метод с
NULL
какfloatValue
просто отсканировать мимо представления значения плавающего. Представлениями с плавающей точкой, как предполагается, является совместимый IEEE.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
floatValue
(NSString
) -
Сканирования для двойного значения от шестнадцатеричного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanHexDouble(_
result
: UnsafeMutablePointer<Double>) -> BoolObjective C
- (BOOL)scanHexDouble:(double *)
result
Параметры
result
По возврату, содержит отсканированное значение. Содержит
HUGE_VAL
или–HUGE_VAL
на переполнении, или0.0
на потере значимости.Возвращаемое значение
YES
true
если получатель находит допустимое представление двойной точки, иначеNO
false
. Переполнение или потерю значимости оба считают допустимыми представлениями с плавающей точкой.Обсуждение
Это соответствует
%a
или%A
форматирование. Шестнадцатеричным двойным представлением нужно предшествовать0x
или0X
.Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция сканера проходит все представление с плавающей точкой.
Вызовите этот метод с
NULL
какresult
просто отсканировать мимо шестнадцатеричного двойного представления.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Сканирования для двойного значения от шестнадцатеричного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanHexFloat(_
result
: UnsafeMutablePointer<Float>) -> BoolObjective C
- (BOOL)scanHexFloat:(float *)
result
Параметры
result
По возврату, содержит отсканированное значение. Содержит
HUGE_VAL
или–HUGE_VAL
на переполнении, или0.0
на потере значимости.Возвращаемое значение
YES
true
если получатель находит допустимое представление с плавающей точкой, иначеNO
false
. Переполнение или потерю значимости оба считают допустимыми представлениями с плавающей точкой.Обсуждение
Это соответствует
%a
или%A
форматирование. Шестнадцатеричным представлением плавающим нужно предшествовать0x
или0X
.Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция сканера проходит все представление с плавающей точкой.
Вызовите этот метод с
NULL
какresult
просто отсканировать мимо шестнадцатеричного представления плавающего.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Сканирования для значения без знака от шестнадцатеричного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanHexInt(_
intValue
: UnsafeMutablePointer<UInt32>) -> BoolObjective C
- (BOOL)scanHexInt:(unsigned int *)
intValue
Параметры
intValue
По возврату, содержит отсканированное значение. Содержит
UINT_MAX
на переполнении.Возвращаемое значение
Возвраты
YES
true
если получатель находит допустимое шестнадцатеричное целочисленное представление, иначеNO
false
. Переполнение считают допустимым шестнадцатеричным целочисленным представлением.Обсуждение
Шестнадцатеричным целочисленным представлением можно дополнительно предшествовать
0x
или0X
. Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция получателя проходит все шестнадцатеричное представление.Вызовите этот метод с
NULL
какintValue
просто отсканировать мимо шестнадцатеричного целочисленного представления.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Сканирования для длинного длинного значения от шестнадцатеричного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanHexLongLong(_
result
: UnsafeMutablePointer<UInt64>) -> BoolObjective C
- (BOOL)scanHexLongLong:(unsigned long long *)
result
Параметры
result
По возврату, содержит отсканированное значение. Содержит
HUGE_VAL
или–HUGE_VAL
на переполнении.Возвращаемое значение
YES
true
если получатель находит допустимое шестнадцатеричное долгое долгое представление, иначеNO
false
. Переполнение считают допустимым шестнадцатеричным долгим долгим представлением.Обсуждение
Шестнадцатеричным целочисленным представлением можно дополнительно предшествовать
0x
или0X
. Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция получателя проходит все шестнадцатеричное представление.Вызовите этот метод с
NULL
какresult
просто отсканировать мимо шестнадцатеричного долгого долгого представления.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Сканирования для NSInteger оценивают от десятичного представления, возвращая найденное значение ссылкой
Объявление
Swift
func scanInteger(_
value
: UnsafeMutablePointer<Int>) -> BoolObjective C
- (BOOL)scanInteger:(NSInteger *)
value
Параметры
value
По возврату, содержит отсканированное значение. Содержит
INT_MAX
илиINT_MIN
на переполнении.Возвращаемое значение
YES
true
если получатель находит допустимое целочисленное представление, иначеNO
false
. Переполнение считают допустимым целочисленным представлением.Обсуждение
Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция получателя проходит все целочисленное представление.
Вызовите этот метод с
NULL
какvalue
просто отсканировать мимо десятичного целочисленного представления.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
См. также
integerValue
(NSString
)– scanInt:
-
Сканирования для международного значения от десятичного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanInt(_
intValue
: UnsafeMutablePointer<Int32>) -> BoolObjective C
- (BOOL)scanInt:(int *)
intValue
Параметры
intValue
По возврату, содержит отсканированное значение. Содержит
INT_MAX
илиINT_MIN
на переполнении.Возвращаемое значение
YES
true
если получатель находит допустимое десятичное целочисленное представление, иначеNO
false
. Переполнение считают допустимым целочисленным представлением.Обсуждение
Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция получателя проходит все десятичное представление.
Вызовите этот метод с
NULL
какintValue
просто отсканировать мимо десятичного целочисленного представления.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
intValue
(NSString
)– scanInteger:
-
Сканирования для длинного длинного значения от десятичного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanLongLong(_
longLongValue
: UnsafeMutablePointer<Int64>) -> BoolObjective C
- (BOOL)scanLongLong:(long long *)
longLongValue
Параметры
longLongValue
По возврату, содержит отсканированное значение. Содержит
LLONG_MAX
илиLLONG_MIN
на переполнении.Возвращаемое значение
YES
true
если получатель находит допустимое десятичное целочисленное представление, иначеNO
false
. Переполнение считают допустимым десятичным целочисленным представлением.Обсуждение
Все цифры переполнения пропускаются. Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция получателя проходит все десятичное представление.
Вызовите этот метод с
NULL
какlongLongValue
просто отсканировать мимо долгого десятичного целочисленного представления.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Если соответствие найдено, сканирует данную строку, возвращая эквивалентный строковый объект ссылкой.
Объявление
Параметры
string
Строка, для которой можно отсканировать в текущем расположении сканирования.
stringValue
По возврату, если получатель содержит строку, эквивалентную
string
в текущем расположении сканирования, содержит строку, эквивалентнуюstring
.Возвращаемое значение
YES
true
еслиstring
соответствует символы в расположении сканирования, иначеNO
false
.Обсуждение
Если
string
присутствует в текущем расположении сканирования, тогда текущее расположение сканирования совершенствуется к после строки; иначе расположение сканирования не изменяется.Вызовите этот метод с
NULL
какstringValue
просто отсканировать мимо данной строки.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Сканирования для длинного длинного значения без знака от десятичного представления, возвращая найденное значение ссылкой.
Объявление
Swift
func scanUnsignedLongLong(_
unsignedLongLongValue
: UnsafeMutablePointer<UInt64>) -> BoolObjective C
- (BOOL)scanUnsignedLongLong:(unsigned long long *)
unsignedLongLongValue
Параметры
unsignedLongLongValue
По возврату, содержит отсканированное значение. Содержит
ULLONG_MAX
на переполнении.Возвращаемое значение
YES
true
если получатель находит допустимое десятичное целочисленное представление, иначеNO
false
. Переполнение считают допустимым десятичным целочисленным представлением.Обсуждение
Все цифры переполнения пропускаются. Прошлые избыточные цифры пропусков в случае переполнения, таким образом, позиция получателя проходит все десятичное представление.
Вызовите этот метод с
NULL
какunsignedLongLongValue
просто отсканировать мимо долгого десятичного целочисленного представления без знака.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.9 и позже.
См. также
-
Сканирует строку, пока с данной строкой не встречаются, накапливая символы в строку, это возвращается ссылкой.
Объявление
Параметры
stopString
Строка для сканирования до.
stringValue
По возврату, содержит любые отсканированные символы.
Возвращаемое значение
YES
true
если получатель сканирует какие-либо символы, иначеNO
false
.Если единственные отсканированные символы находятся в
charactersToBeSkipped
набор символов (который по умолчанию является пробельным символом и набором символа новой строки), тогда этот метод возвратыNO
false
.Обсуждение
Если
stopString
присутствует в получателе, затем по возврату, расположение сканирования установлено в начало той строки.Если
stopString
первая строка в получателе, тогда возвраты методаNO
false
иstringValue
не изменяется.Если строка поиска (
stopString
) не присутствует в исходной строке сканера, остаток от исходной строки помещается вstringValue
, получательscanLocation
совершенствуется до конца исходной строки и возвратов методаYES
true
.Вызовите этот метод с
NULL
какstringValue
просто отсканировать до данной строки.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
принять участие принять участие
СвойствоФлаг, указывающий, исчерпал ли получатель все значительные символы. (только для чтения)
Объявление
Swift
var atEnd: Bool { get }
Objective C
@property(getter=isAtEnd, readonly) BOOL atEnd
Обсуждение
YES
true
если получатель исчерпал все значительные символы в своей строке, иначеNO
false
.Если только символы от набора, возвраты, который будет пропущен остаются
YES
true
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
См. также