Как быстро извлечь n-й символ из строки в Excel?
Excel works!
При выгрузке из бухгалтерской программы, загрузке данных из Интернета или если файл заполняет неопытный пользователь, случается, что ячейки содержат лишние символы, пробелы, точки, переносы строк и т.д. Каков наилучший способ быстро и легко удалить любой символ из ячейки Excel?
Самая распространенная ошибка — когда Excel не распознает текст как число. Вы можете прочитать об этом здесь . Существует несколько способов удаления персонажа из ячейки, я постараюсь описать каждый из них более подробно.
1. Найти и заменить символ в ячейке Excel
Все продукты Microsoft Office поставляются со специальным инструментом. Нажав Ctrl+F (поиск) или Ctrl+H (замена). В первом поле введите символ, который вы хотите удалить. Во втором поле оставьте его пустым.
Подробнее об этом инструменте читайте в данной статье
2. Удалить символ в ячейке Excel формулой
Прекрасная функция =SEND() позволяет удалить любой символ.
Эта функция имеет четыре параметра: текст;старый_текст;новый_текст;номер_случая
текст — здесь указывается ячейка, где записан текст для изменения
старый_текст — что меняем
новый_текст — на что меняем
номер_вхождения — является необязательным. Он предписывает Excel заменить только символы, начиная с определенного номера. Интересное дополнение
Если все точки заменить запятыми, то получится такая формула:
3. =СЖПРОБЕЛЫ()
Часто пробелы не видны невооруженным глазом («Иванов Иван «), нужно писать дополнительную проверку, чтобы найти их, в общем, предпринимать дополнительные действия. Проще всего воспользоваться формулой =СЖПРОБЕЛЫ(). Она убирает все задвоенные пробелы, а так же лишние пробелы в конце и начале текста в ячейке (станет «Иванов Иван») .
Но! Будьте внимательнее — формула удаляет стандартные пробелы. Если вы к примеру копировали текст с сайта — он может содержать символы похожие на пробелы, но функция =СЖПРОБЕЛЫ() не будет их удалять. В таком случае придется пользоваться возможностью Найти и заменить.
Но в 95% случаев сжпробелы помогает на «отлично».
Я даже написала еще одну статью об устранении пробелов.
4. Удалить первый символ
Очень часто требуется удалить первый символ, несколько символов в конце и т.д. Как сделать это быстро и не вручную? Используйте функцию PSTR .
Представленная здесь информация очень подробна.
Например, в ячейках у нас есть номер сотрудника. Нам нужно избавиться от первых двух символов перед точкой и пробелом.
Формула выглядит следующим образом
Можно также разбить текст на колонки и разделить их на отдельные ячейки.
5. Функция =ПЕЧСИМВ()
Функция с одним аргументом очень похожа на СЖПРОБЕЛЫ, но она удаляет непечатные символы в строке, такие как перенос строки, знаки абзаца, какие-нибудь квадратики и т.п. (первые 32 непечатаемых знаков в 7-разрядном коде ASCII). Особенно полезна она, если нужно удалить перенос строки — мне всегда помогает.
Предупреждение. В большинстве случаев, но не во всех, лишние символы можно удалить с помощью PEXIMW.
Работа со строками в 1С 8.3
Строка — примитивный тип данных в языке программирования 1С. Помимо 1С, этот тип данных используется во всех известных языках программирования, обычно он называется «string».
Функции работы со строками в 1С
Рассмотрите основные функции 1С, языка, поставляемого вместе с компьютером.
Строка
С помощью String() вы можете получить текстовые представления переменных других типов.
СтрДлина
Эта функция позволяет указать количество символов в строке 1С, включая пробелы и нерелевантные символы.
СокрЛП, СокрЛ, СокрП
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Полезная функция для удаления незначащих символов в строковом значении. СокрЛ обрабатывает символы, стоящие слева от последнего значащего символа, СокрП — справа. А СокрЛП — справа и слева.
Помимо удаления пробелов, эта функция 1С удаляет разрывы колонок, неперекрывающиеся пробелы и т.д.
Лев, Прав, Сред
Используя эти функции, вы можете легко получить первый (Left) или последний (Right) символ в строке, и даже любое количество символов (Average).
Найти
Функция для поиска подстроки внутри другой подстроки. Синтаксис Найти(<Строка для поиска>, <Подстрока поиска>). Функция возвращает число — номер позиции символа (или символов) в исходной подстроке. Если подстроки не найдено, вернётся число 0. Если в искомой подстроке есть несколько вхождений, вернется номер позиции первого совпадения.
ВРег, НРег, ТРег
Функции для управления регистром строки. ВРег — преобразует строку в верхний регистр. НРег — в нижний. ТРег — у каждого нового слова первая буква преобразуется в верхний регистр, остальные в нижний.
ПустаяСтрока
Эта функция сравнивает строку с пустой строкой. Она проверяет наличие незначащих символов.
Аналогичным образом можно проверить строку на пустое значение следующим образом
СтрЗаменить
Используя PageReplace, вы можете заменить искомое значение на нужное вам. Синтаксис:
СтрЧислоСтрок
Предоставляет информацию о количестве строк в многострочном тексте. Эта функция подсчитывает количество переносов строк (Символы.) PS).
Используя фрагмент текста в качестве примера, построчная обработка:
СтрПолучитьСтроку
С помощью данной функции можно получить произвольную строку из многострочного текста. Синтаксис — СтрПолучитьСтроку(<Строка>, <Номер строки>).
СтрЧислоВхождений
Подсчитывает количество повторений произвольного фрагмента в строке. Обратите внимание на то, сколько раз в тексте встречаются определенные символы или слова.
Символ и КодСимвола
Две обратные функции. С помощью CodeSymbol можно получить код символов Unicode. С помощью функции Symbol можно получить символ, который знает кодировщик Unicode.
Часто встречающиеся задачи по работе со строками в 1С
Давайте рассмотрим несколько классических примеров решения задач с использованием текстовых переменных.
Конкатенация строк в 1С
Конкатенация, или объединение строк в 1С делается оператором «+».
Преобразовать число в строку
Тут всё просто. Достаточно использовать метод «Строка()»:
Однако наличие неразрывного пробела может сбить с толку.
Его можно устранить, заменив неразрывный пробел пустой строкой:
Или используя метод Формат:
Кавычки в строке 1С
Начинающим трудно расставить кавычки внутри строки, хотя в этом нет ничего сложного. Вместо того чтобы использовать одну кавычку, поставьте две внутри строки.
Символ переноса строки
Символ переноса строки необходим для переноса строки на следующую строку. В 1С это можно сделать с помощью специальной конструкции «Символы.ПС».
Сравнение строк в 1С
Сравнить строки достаточно просто с помощью оператора сравнения — «=».
Чтобы получить корректное сравнение, часто необходимо преобразовать строку к одному регистру и удалить не значащие символы:
Таким образом можно получить более точное сравнение двух линий.
Убрать пробелы в строке 1С
Часто достаточно устранить разрывы в линии 1С.
Удалите правые и левые пробелы, выполнив следующие действия:
Если вы хотите убрать все пробелы, вы можете заменить их пустой строкой:
Если вы хотите удалить неразрывные пробелы из строки, полученной из числового типа, вы можете сделать это следующим образом
Другие статьи о 1С:
Если Вы начинаете изучать 1С программирование, рекомендуем наш курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем предоставить бесплатные консультации всем желающим, но наша команда будет рада оказать услуги по внедрению и сопровождению 1С. Посетите страницу «Услуги 1С» или свяжитесь с нами по телефону +7 (499) 350 29 00, чтобы узнать больше о наших услугах. Москва и Московская область являются нашими регионами специализации.