|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
14.12.2018, 17:50 | #1 | |
Замена символов в строке
Инженер-конструктор
Москва
Регистрация: 25.12.2015
Сообщений: 77
|
||
Просмотров: 3333
|
|
||||
Инженер-конструктор Регистрация: 25.12.2015
Москва
Сообщений: 77
|
|
|||
|
||||
Инженер-конструктор Регистрация: 25.12.2015
Москва
Сообщений: 77
|
|
|||
|
||||
в лиспе значение стоковой переменной ограничивается кавычками. соответственно если значение строковой переменной содержит каычку(и), то в виду ранее сказанного эта кавычка должна иметь вид \".
в примере вышее должна работать конструкция (vl-string-ranslatet "\"" "" Temp_List_Name), то есть заменяющая все кавычки на ничто или конструкция (vl-string-subst "" "\"" Temp_List_Name), заменяющая первую встретившуюся кавычку опять же на ничто упс... |
||||
|
||||
Инженер-конструктор Регистрация: 25.12.2015
Москва
Сообщений: 77
|
Цитата:
P.S.На "ничто" заменить получалось) |
|||
|
||||
Регистрация: 15.08.2005
г. Норильск
Сообщений: 469
|
Всем привет!
Больно уж название у темы хорошее - не хочется дубляжа. Задам и я свой вопрос. Здесь. Если замена "хоть чего" на "хоть что" в обычных текстах и атрибутах вопросов как бы не вызывает, то на MTEXT'ах (далее - МТ) вылазят ньюансы. Допустим, есть в чертехе куча МТ вида Блок АС18-2 Блок АС18-3 Блок АС18-n Вот именно так они и выглядят - часть текста черная, а часть красная. Или - ещё более изощрённый вариант, его средствами форума не изобразить - "18" выделена не цветом, а шириной. Задача - заменить "С1" на "В2". Т.е. замена должна проходить по границе форматирования МТ, где стоит какой-то произвольный управляющий код. Задача "не высосана из пальца", а реальная - сам был немерянно удивлён, когда столкнулся с такой необходимостью. Первая мысль - "разумно очистить" МТ от "ненужных" находящихся внутри его управляющих кодов, заменить тексты (пусть и с потерей исходного форматирования) - да на этом и успокоиться. Но вот интересно - а в принципе задача с сохранением исходного форматирования МТ решается? Если есть соображения насчёт алгоритма решения - с удовольствием прочитаю и попробую реализовать.
__________________
Счастливо, Алексей! |
|||
|
||||
Инженер-конструктор Регистрация: 25.12.2015
Москва
Сообщений: 77
|
Цитата:
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,040
|
Цитата:
----- добавлено через ~17 ч. ----- Цитата:
Код:
Использование Код:
Последний раз редактировалось Сергей812, 16.12.2018 в 19:14. Причина: изменение кода функции обратного вызова |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,040
|
===AAA===, там принцип - извлекаем через обратную функцию коды форматирования и длины самого текста каждого фрагмента - и сохраняем в отдельные списки. Потом заменяем в чистой строке без форматирования содержимое и собираем обратно. Т.е. коды форматирования не парсим (и на их структуру не заморачиваемся - ибо лень) и коды управляющих символов оставляем как есть.
|
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Замена текстового стиля | VVA | Готовые программы | 306 | 03.04.2024 08:15 |
Как вывести меню команды в командной строке? (пояснения внутри) | Booka1a | AutoCAD | 16 | 02.02.2018 17:55 |
Является ли замена плит покрытия капремонтом или реконструкцией | sergkuz | Прочее. Архитектура и строительство | 44 | 07.04.2017 18:29 |
Поиск и замена спец символов в многострочном тексте | Psyakrev | AutoCAD | 5 | 25.01.2011 12:49 |
Поиск и замена символов в текстовой строке | DEMOGOG | Программирование | 10 | 09.09.2009 11:46 |