Znajdź i zamień, akapity z małej litery i zamiana. [SOLVED]

Użytkowanie edytora dokumentów

Znajdź i zamień, akapity z małej litery i zamiana. [SOLVED]

Postprzez Jendrass » Pn kwi 05, 2021 3:59 pm

Jak znaleźć akapity zaczynające się z małej litery?
Niektóre zdania zostały podzielone w ten sposób, że część zdania została przerzucona do nowej linii enterem, a dodatkowo ta nowa linia zaczyna się tabulatorem.
Jeśli uda mi się to znaleźć, to zamienię to na spacje i po problemie. To był błąd.
Dlaczego?
Spróbowałem tak:
\t([:lower:])
i super - znajduję.
To co wydawało mi się trudniejsze okazało się łatwe.
Dalej zrobiło się trudniej, bo zamiana nie wychodzi.
Wpisuję w pole "zamień na" <\> i wstawiam spację z klawiatury.
Edytor zamienia mi pierwszą małą literę akapitu (to logiczne) na <\ > (to dla mnie nielogiczne, bo <\> to znak specjalny).
Jeśli w polu "zamień na" wpiszę < $1> to jest lepiej, ale zostaje mi "enter" i zdanie mam nadal podzielone.
Jak to zrobić poprawnie?
Jak usunąć akapit zaczynający się z małej litery poprzez dołączenie go do poprzedzającego tekstu?
Ostatnio edytowano Wt kwi 27, 2021 7:01 pm przez Jendrass, łącznie edytowano 3 razy
LibreOffice 7.1.3, Windows 7
Jendrass
 
Posty: 14
Dołączył(a): N maja 19, 2019 12:17 pm

Re: Znajdź i zamień, akapity z małej litery i zamiana.

Postprzez Jermor » Pn kwi 05, 2021 6:03 pm

Najpierw odpowiem co do znaków specjalnych.
Są dwa zapisy "\<" i "\>", które są obecnie zdeprecjonowane (lecz nadal można ich używać) i zastąpione konstrukcją \b. Do poczytania w helpie.
Te zapisy dotyczą operacji "Znajdź" i tylko w tym polu mogą zostać użyte. Wpisanie ich do pola "Zamień" traktuje je już jako zwykłe znaki.

Teraz o operacji wyszukiwania. Przebiega ona wyłącznie w obrębie akapitów i nie obejmuje samego symbolu końca akapitu. Dlatego nie można w procesie tradycyjnego wyszukiwania i zamiany połączyć akapitów, gdyż nie można wskazać do znalezienia ciągu zawierającego znak końca akapitu a po nim jakichś kolejnych znaków.
Należy tę operację wykonać w kilku krokach.
  • Zastąpić wszystkie znaki końca akapitu jakimś własnym, na pewno niewystępującym w dokumencie ciągiem. Ja w takich sytuacjach stosuję "#!#".
    Przy włączonej opcji wyrażeń regularnych w pole "Znajdź" należy wpisać tylko znak "$". W pole "Zamień" wpisać "#!#". Po zatwierdzeniu dokument będzie zawierał jedyny znak końca akapitu po ostatnim znaku w tym dokumencie. Pozostałe znaki końca akapitu zostaną zastąpione tym wybranym ciągiem.
  • W drugim kroku, do pola "Znajdź" wpisać "#!#\t([:lower:]) a do pola "Zamień" wpisać: " $1" (spacja i $1). Wszystkie miejsca, w których po "#!#" wystąpił znak tabulatora i mała litera zostaną zastąpione spacją i tą literą.
  • W trzecim kroku wszystkie pozostałe znaki "#!#" należy zastąpić "\n", co spowoduje zastąpienie ich ponownie znakiem końca akapitu.
Wykonaj te działania na kopii dokumentu.
Rozważ także wyszukiwanie w drugim kroku takiego ciągu "#!#[:space:]*\t[:space:]*([:lower:])". Napisałeś, że ktoś w dziwny sposób podzielił akapity, więc nie masz pewności, że np. nie wstawił też niespodziewanych spacji.
AOO 4.1.9, LO 7.0.5 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Avatar użytkownika
Jermor
 
Posty: 1460
Dołączył(a): So paź 12, 2013 11:09 am

Re: Znajdź i zamień, akapity z małej litery i zamiana.

Postprzez Jendrass » Pn kwi 05, 2021 6:09 pm

BARDZO, BARDZO dziękuję
LibreOffice 7.1.3, Windows 7
Jendrass
 
Posty: 14
Dołączył(a): N maja 19, 2019 12:17 pm

Re: Znajdź i zamień, akapity z małej litery i zamiana.

Postprzez Jendrass » Pn kwi 26, 2021 3:57 pm

Sposób podany przez @Jermor działa prawie zawsze.
Prawie, bo w jednym z dokumentów po wpisaniu w "Znajdź" "$" a w polu "Zamień" "#!#" i zatwierdzeniu stało się coś nieoczekiwanego.
Oprócz powyższej zamiany tekst zmienił formatowanie na centralne a czcionkę na bold.
Co dziwniejsze opcja "cofnij" cofa zamianę ale nie formatowanie i zmianę czcionki.
Czy ktoś się tym spotkał?

PS.
Przepraszam, za post pod postem, ale nie wiedziałem czy edytowanie przesunie wątek do góry.
LibreOffice 7.1.3, Windows 7
Jendrass
 
Posty: 14
Dołączył(a): N maja 19, 2019 12:17 pm

Re: Znajdź i zamień, akapity z małej litery i zamiana.

Postprzez Jermor » Pn kwi 26, 2021 5:36 pm

Działa zawsze, bo jak napisałeś, zamienia ci znaki końca akapitu na wymagany ciąg.
Jeśli chodzi o wyrównanie. Gdy pierwszy akapit dokumentu jest wyrównany do środka, to po przekształceniu dokumentu w jeden akapit, następne dzielenie dokumentu na nowe akapity, sprawi, że każdy z nich będzie wyrównany do środka. (gdy napiszesz akapit z wyrównaniem do środka, to po naciśnięciu ENTER nowy akapit jest automatycznie wyrównany do środka)
Ponadto przy takiej zamianie, styl pierwszego akapitu, który podlega zamianie, zostaje przypisany do wszystkich dołączonych akapitów. Po działaniu odwrotnym wszystkie odtworzone akapity mają przypisany ten właśnie styl.
Ale dokładne wyjaśnienie możliwe jest dopiero po przeanalizowaniu konkretnego dokumentu.
AOO 4.1.9, LO 7.0.5 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Avatar użytkownika
Jermor
 
Posty: 1460
Dołączył(a): So paź 12, 2013 11:09 am


Powrót do Writer

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 gości