Изменение строк
Вы можете изменить содержимое изменяемой строки с помощью операций, описанных в этом разделе. См. Изменяемость.
Наиболее простой способ изменить содержимое существующей строки — это использовать aset (см. Функции массивов). (aset string idx char) сохраняет символ в строку по индексу символа idx. Он автоматически преобразует чисто-ASCII строку в многобайтовую строку (см. Представления текста), если это необходимо, но мы рекомендуем всегда убедиться, что строка является многобайтовой (например, с помощью string-to-multibyte, см. Преобразование представлений), если символ — это не-ASCII символ, а не сырой байт.
Более мощной функцией является store-substring:
- Функция: store-substring строка idx объект
-
Эта функция изменяет часть содержимого указанной строки, сохраняя объект начиная с индекса символа idx. Аргумент объект может быть либо символом (в этом случае функция ведет себя точно так же, как
aset), либо (меньшей) строкой. Если объект является многобайтовой строкой, мы рекомендуем убедиться, что строка также является многобайтовой, даже если она чисто-ASCII.Поскольку невозможно изменить количество символов в существующей строке, ошибка возникает, если объект содержит больше символов, чем поместится в строке начиная с индекса символа idx.
Чтобы очистить строку, содержащую пароль, используйте clear-string:
- Функция: clear-string строка
Это делает строку однобайтовой строкой и очищает её содержимое до нулей. Это также может изменить длину строки.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Modifying-Strings.html