Автор Тема: Задача на строки. Сделать поиск-замену в табличном тексте  (Прочитано 6488 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Suppir [?]

  • Продвинутый
  • ***
  • Сообщений: 967

  • Автор темы
  • Репутация: 61
    • Награды
Например, что-нибудь из этого:

Найти: (№|N)[ °]*(\d)
Заменить на: N $2

Найти:(\d{2,4})\s*г\.?(?!од)
Заменить на:$1 г.

Найти: (ул|г|пос|пер|п|ч|ст|тыс)\.\s*(\S|\d)
Заменить на: $1. $2


Да хотя бы "\s+" на " " (заменить много пробельных символов на один). Главное, чтобы с регулярными выражениями, а не через вордовскую функцию поиска-замены.

« Последнее редактирование: Май 08, 2010, 22:05:16 от Suppir »

Русское сообщество AutoIt


Оффлайн AZJIO [?]

  • VIP
  • *
  • Сообщений: 2725
  • Репутация: 1140
    • мой сайт
    • Награды
  • Версия AutoIt: 3.3.8.1
Suppir
Проще читать из файла необходимые данные и записать в другой файл в формате другой программы. Если использовать новый файл в виде шаблона, то это проще всего.

Оффлайн Suppir [?]

  • Продвинутый
  • ***
  • Сообщений: 967

  • Автор темы
  • Репутация: 61
    • Награды
AZJIO, программа не дает возможности сохранять документ в файл. Это вроде интерфейса к БД.
Т.е. мне нужно скопировать из нее в буфер текст с таблицами и вставить в другую программу.
При этом нужно произвести поиски-замены в буфере.

Оффлайн Suppir [?]

  • Продвинутый
  • ***
  • Сообщений: 967

  • Автор темы
  • Репутация: 61
    • Награды
Осталась задача

Имеем в буфере обмена какой-то текст с вордовскими таблицами.
Необходимо произвести замену в буфере обмена с регулярными выражениями
(например $line = StringRegExpReplace($line, " +", " ")
При этом структура таблиц должна сохраниться.

Русское сообщество AutoIt


Оффлайн Vlasssov [?]

  • Осваивающий
  • **
  • Сообщений: 421
  • Репутация: 25
  • Пол: Мужской
  • Гопломах
    • Награды
  • Версия AutoIt: 3.3.14.0
Читал, читал.. так и не понял - зачем в буфере обмен это делать?

Оффлайн Suppir [?]

  • Продвинутый
  • ***
  • Сообщений: 967

  • Автор темы
  • Репутация: 61
    • Награды
А где еще делать?

Мне нужно из программы А перенести текст с таблицами в программу Б, сделав при этом замены. Можно, конечно, скопировать из программы А в MS Word, там сделать замены, а потом скопировать в программу Б, но это
1) очень долго (операцию нужно часто повторять)
2) у большинства пользователей нет MS Word



Русское сообщество AutoIt


 

Похожие темы

  Тема / Автор Ответов Последний ответ
5 Ответов
3048 Просмотров
Последний ответ Апрель 26, 2010, 20:46:02
от Suppir
0 Ответов
2332 Просмотров
Последний ответ Май 19, 2010, 12:41:39
от Suppir
5 Ответов
15702 Просмотров
Последний ответ Декабрь 05, 2012, 16:40:30
от AZJIO
2 Ответов
6174 Просмотров
Последний ответ Декабрь 28, 2010, 09:19:53
от gregaz
5 Ответов
5561 Просмотров
Последний ответ Май 02, 2011, 01:03:39
от general66
4 Ответов
3403 Просмотров
Последний ответ Март 03, 2013, 21:02:34
от Naisho
3 Ответов
2189 Просмотров
Последний ответ Май 28, 2015, 19:22:23
от Tapok
31 Ответов
7331 Просмотров
Последний ответ Сентябрь 09, 2015, 08:02:55
от Yashied
6 Ответов
1982 Просмотров
Последний ответ Август 23, 2016, 21:50:54
от ra4o
1 Ответов
251 Просмотров
Последний ответ Февраль 07, 2018, 19:34:09
от ra4o