- В этой теме 1 ответ, 2 участника, последнее обновление 1 год назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как удалить лишние символы из строки в 1С, оставив только цифры и буквы?
проверить строку на наличие только разрешенных символов(цифры, английский алфавит в двух регистрах) и удалить лишние
Для проверки строки на наличие только разрешенных символов (цифры и английский алфавит в двух регистрах) и удаления лишних символов в 1С, можно использовать регулярные выражения. Вот пример функции, которая выполняет эту задачу:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
1C Функция УдалитьЛишниеСимволы(Строка) // Создаем объект регулярного выражения RegExp = Новый COMОбъект("VBScript.RegExp"); RegExp.MultiLine = Ложь; RegExp.Global = Истина; // Устанавливаем паттерн для разрешенных символов (цифры и буквы a-z, A-Z) RegExp.Pattern = "[^0-9A-Za-z]"; // Удаляем лишние символы Результат = RegExp.Replace(Строка, ""); Возврат Результат; КонецФункции |
### Пример использования:
|
1 2 3 4 |
1C Строка = "ABC-9.64,5=s"; Результат = УдалитьЛишниеСимволы(Строка); Сообщить(Результат); // Вывод: ABC9645s |
В этом коде мы создаем объект регулярного выражения, устанавливаем паттерн, который соответствует всем символам, кроме цифр и букв английского алфавита, и затем заменяем их на пустую строку.
Рекомендую посмотреть здесь: https://helpf.pro/faq/view/988.html