Отдельный символ можно выяснить с помощью метода
charAt(). Он принимает в качестве аргумента целое число, указывающее позицию в строке для символа, который следует возвратить. Ввиду того что в JavaScript нет различия между отдельными символами и строками, метод возвращает строку, содержащую требуемый символ.
Помните о том, что подобно массивам, символы в строках JavaScript считаются начиная с нуля, поэтому
"JavaScript".charAt(1);
возвратит "а".
С помощью
charCodeAt() можно также выяснить числовое значение, связанное с конкретным символом. Поскольку значение "а" в Unicode равно 97, оператор
"JavaScript".charCodeAt(1);
возвратит 97.
С помощью метода
fromCharCode() очень просто преобразовать код символа в соответствующий символ. В отличие от других, этот метод используется непосредственно с базовым объектом String, а не с экземпляром строки. Например,
var aChar = String.fromCharCode(82);
должен присвоить переменной aChar значение R. Методу можно передать сразу несколько значений, разделив их запятыми. Например, в результате выполнения
var aString = String.fromCharCode(1057,1051,1054,1053);
строке aString будет присвоено значение "СЛОН".
Метод
indexOf() берет строковый аргумент и возвращает начальную позицию первого вхождения аргумента в строке. Например,
"JavaScript".indexOf("Script");
возвратит 4. Если аргумент не найден, возвращается -1. Этот метод допускает также необязательный второй аргумент, указывающий позицию, с которой следует начать поиск. Если второй аргумент указан, метод возвращает начальную позицию первого вхождения аргумента в строке после позиции начала поиска. Например,
"JavaScript".indexOf ("а", 2);
возвратит 3. Родственным методом является
lastIndexOf(), возвращающий начальную позицию последнего вхождения строки, заданной в качестве аргумента. Этот метод допускает также необязательный второй аргумент, указывающий позицию, на которой следует закончить поиск. Например,
"JavaScript".lastIndexOf("а", 2);
возвратит 1. Этот метод также возвращает -1, если строка не найдена.
Существует множество способов извлечения подстрок в JavaScript. Лучше всего это делать с помощью
substring(). Первый аргумент метода
substring() указывает позицию, с которой начинается требуемая подстрока. Необязательный второй аргумент указывает позицию, на которой заканчивается требуемая подстрока.
Метод возвращает строку, являющуюся подстрокой исходной строки, начиная с данной позиции и до позиции (не включая последнюю), указанной вторым аргументом. Например,
"JavaScript".substring(3);
возвратит "aScript", а
"JavaScript".substring(3, 7);
возвратит "aScr". Метод
slice() — это несколько более совершенная версия
substring(). Он допускает те же аргументы, что и
substring(), но значения позиций могут быть отрицательными. Отрицательное значение позиции означает отсчет с конца строки.
Методы
match() и
search() используют регулярные выражения и предназначены для более сложного анализа строк. Использование регулярных выражений мы обсудим далее.