Dzielenie wyrazów w wierszu\akapicie

Użytkowanie edytora dokumentów
adams2222
Posty: 3
Rejestracja: pn maja 30, 2011 4:37 pm

Dzielenie wyrazów w wierszu\akapicie

Post autor: adams2222 »

Witam Serdecznie

Nie znam dobrze OpenOffica a mam taki problem. Generuje sobie dokumenty z danych xml-owych i mam taką sytuację

Wynik w wierszu mam
1. Jan; 2. Paweł; 3. Adam

a chciałbym ( formatowanie warunkowe , makro cokolwiek zmieniało mi te dane w taki sposób.
np
1. Jan;
2. Paweł;
3. Adam

Dziękuje z góry za pomoc. Pozdrawiam.
OpenOffice 3.1 na Windows Vista
Marek_Sz
Posty: 74
Rejestracja: pn lis 02, 2009 2:04 pm

Re: Dzielenie wyrazów w wierszu\akapicie

Post autor: Marek_Sz »

Tekst jak w przykładzie należy skonwertować na tabelę ustawiając znak rozdzielający jako średnik a otrzymaną tabelę skonwertować na tekst dzieląc na znaku akapitu. Jeżeli o to chodziło to całą procedurę można nagrać jako makro.

Tyle mi przychodzi do głowy na szybko.
LibreOffice 5.0 na Windows 7 [praca] i LibreOffice 5.1 (64 bit) na Windows 7 [dom]
Jan_J
Posty: 4576
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dzielenie wyrazów w wierszu\akapicie

Post autor: Jan_J »

Koszernie byłoby wstawiać łamanie wierszy na poziomie arkusza transformacji. Lepiej dać se spokój, bo więcej z tym roboty niż pożytku.

Warto rozważyć zamianę wzorców regularnych, która dokładałaby Enter po każdym słowie poprzedzonym numerem i zakończonym średnikiem. We Writerze przeprowadzimy ją korzystając z formularza Znajdź/Zamień, mniej więcej w ten sposób:
Edycja / Znajdź-zamień / [x] Wyrażenia regularne : frazę ([0-9]+\. [:alpha:]+;) zastąp frazą $1\n

Objaśnienia:
  • [0-9]+\. to liczba z kropką na końcu.
  • [:alpha:]+; to słowo ze średnikiem na końcu.
  • (coś tam w nawiasie) to deklaracja bloku dopasowania, do którego można się odwołać we frazie Zamień na.
  • $1 to właśnie odwołanie się do pierwszego bloku w dopasowanym wyrażeniu.
  • Wreszcie \n to Enter (koniec akapitu. Lepszy byłby Shift-enter, czyli \r, ale Writer go nie obsłuży).
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
adams2222
Posty: 3
Rejestracja: pn maja 30, 2011 4:37 pm

Re: Dzielenie wyrazów w wierszu\akapicie

Post autor: adams2222 »

Jezeli chodzi o konwersja tekst --> tabela potem tabela tekst to dziala makro zrobione tez działa, a jak zrobić wywołanie makra po otwarciu dokumentu??


Natomiast to co napisał pan Jan_J można nieco jaśniej, przepraszam, ale ja nie z tej dziedziny, jestem bazodanowcem tam jest wszystko jasna i klarowne:)
OpenOffice 3.1 na Windows Vista
adams2222
Posty: 3
Rejestracja: pn maja 30, 2011 4:37 pm

Re: Dzielenie wyrazów w wierszu\akapicie

Post autor: adams2222 »

Zamień z wyrażeniami działa super myślę , że można zrobić makro tylko jak je uruchomić po otwarciu dokumentu
OpenOffice 3.1 na Windows Vista
Jan_J
Posty: 4576
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dzielenie wyrazów w wierszu\akapicie

Post autor: Jan_J »

@
adams2222 pisze:Natomiast to co napisał pan Jan_J można nieco jaśniej, przepraszam
Jasne, uzupełniłem wypowiedź. Wyrażenia regularne to piękne narzędzie o archaicznej składni.

@
adams2222 pisze:Zamień z wyrażeniami działa super myślę , że można zrobić makro tylko jak je uruchomić po otwarciu dokumentu
Zamiana z użyciem regex w makrze: Andrew Pitonyak, http://www.pitonyak.org/AndrewMacro.odt, rozdział 7.14.4.
Podpięcie makra pod otwarcie dokumentu: Narzędzia / Dostosuj / Zdarzenia. Istnieją też mniej cywilizowane metody.
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ODPOWIEDZ