1 Востаннє редагувалося Betterthanyou (03.03.2023 20:43:34)

Тема: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

Якщо скопіювати з телеграм в LibreOffice Writer два і більше повідомлень буде додано також "Ім'я Прізвише, [XX.XX.XXXX XX:XX]"

Name Subname, [03.03.2023 17:42]
Приклад 1

Name Subname, [03.03.2023 17:42]
Приклад 2
а я хочу
Приклад 1

Приклад 2

Як його видалити за допомогою макроса на BASIC ?

Ось код на JS (працює в консолі браузера)

 
let str = "[HERE ARE PLACE FOR YOUR TEXT]"

let pattern = /\n.+,\s\[\d{2}\.\d{2}\.\d{4}\s\d{2}:\d{2}\]/g;
let textWithoutPattern = str.value.replace(pattern, '');

Код на BASIC

Sub DeletePattern()
    Dim oDoc As Object
    Dim oText As Object
    Dim oCursor As Object
    Dim oMatches As Object
    Dim oRegExp As Object
    Dim sPattern As String
    Dim i As Integer
    
    oDoc = ThisComponent
    oText = oDoc.Text.createEnumeration()
    oCursor = oText.createTextCursor()
    sPattern = "(\w+\s)?\w+,\s\[\d{2}\.\d{2}\.\d{4}\s\d{2}:\d{2}\]"
    oRegExp = createUnoService("com.sun.star.util.RegExp")
End Sub

https://www.openoffice.org/api/docs/com … eText.html

BASIC runtime error.
Property or method not found: createTextCursor

TextCursor - теж така помилка

На мій погляд документація досить "суха", немає прикладів. Тому скоріше всього те що я написав не буде робити...


Можливо хтось писав макроси, можете підказати як написати функцію ? В JS вже є робочий код - це простий реплейс. Все що потрібно зробити в BASIC це "пройтися" по всьому тексту і позаміняти.

P.S. Я знаю що овпен офіс і лібер офіс це різні програми, просто важко знайти документацію на лібер офіс. Тому перший лінк на овпен офіс.

Прихований текст
let textarea1 = document.querySelector('textarea.dont-break-out[name="text"][id="text"]');


let pattern = /\n.+,\s\[\d{2}\.\d{2}\.\d{4}\s\d{1,2}:\d{2}\]/g;
let textWithoutPattern = textarea1.value.replace(pattern, '');

textarea1.value = textWithoutPattern;

https://www.editpad.org/

2

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

Увімкніть запис макросів і зробіть руками потрібні дії. Викличте діалог заміни тексту, вбийте там потрібні налаштування і т. д. В результаті вам згенерує макрос з кодом, який гарантовано працює.

Подякували: Betterthanyou, koala2

3

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

Прихований текст

різні програми

wiki написав:

LibreOffice (/ˈliːbrə/)[a] is a free and open-source office productivity software suite, a project of The Document Foundation (TDF). It was forked in 2010 from OpenOffice.org, an open-sourced version of the earlier StarOffice

4

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

Пам'ятаю це. Після купівлі Sun Ораклом спільнота певний час придивлялася. Оракл спершу обіцяв ніц не робити без обговорення зі спільнотою; але потім замінив іконки в офісі на власні, і спільнота одразу форкнулася.

5

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

монопольне право змінювати іконки схоже на расізм...

6

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

ur_naz написав:

монопольне право змінювати іконки схоже на расізм...

Чим?

7

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

примусом

8

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

Расизм може бути без примусу, а примус без расизму.

Подякували: Tarpan871

9

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

koala написав:

Расизм може бути без примусу, а примус без расизму.

Прихований текст

агов расизме, ти де :D?https://content2.rozetka.com.ua/goods/images/big/19864034.jpg

10

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

расизм і є примус. неважливо білий, чорний, гендерний, класовий, технологічний чи будь який ще.

11

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

Firefox is dead написав:
koala написав:

Расизм може бути без примусу, а примус без расизму.

Прихований текст

агов расизме, ти де :D?https://content2.rozetka.com.ua/goods/images/big/19864034.jpg

Прихований текст

Цей примус придатний для катування афроукраїнців! Отже, расизм. https://replace.org.ua/extensions/nya_smiles/img/aq.gif

Подякували: Firefox is dead1

12

Re: LibreOffice Basic Видалити зайву інформацію при копіюванні з телеграм

ur_naz написав:

расизм і є примус. неважливо білий, чорний, гендерний, класовий, технологічний чи будь який ще.

Расизм є ідеєю, що люди поділяються на раси, і кожній расі притаманні певні жорстко генетично визначні риси (крім, звісно, прямих ознак раси). Композитор Вагнер, наприклад, вважав євреїв окремою расою, не здатною до "високої німецької творчості"; але я не знаю жодного факту застосування Вагнером примусу з приводу своїх переконань, увесь його расизм був літературно-епістолярним.