Wyrażenie regularne -połączenia przerwanych zdań

Użytkowanie edytora dokumentów
tomekwtz
Posty: 7
Rejestracja: pn wrz 26, 2016 4:29 pm

Wyrażenie regularne -połączenia przerwanych zdań

Post autor: tomekwtz »

Jakie polecenie w Wyrażeniach Regularnych wymusi takie zaznaczenie jak na załączniku
( Jest to obszar między końcowym akapitem a małą literą w nowym wierszu)
1.jpg
Potrzebne mi jest to do połączenia przerwanych zdań końcowym akapitem.
Np ^[:lower:] zaznaczy mi taki obszar ale ŁĄCZNIE z małą literą. A potrzebny mi jest zaznaczenie bez żadnych liter.
Może są też inne do tego rozwiązania?

przed korektą:
Podczas tej czynności przemawiał
do Carli kojącym głosem:

po korekcie
Podczas tej czynności przemawiał do Carli kojącym głosem:
OpenOffice 4.1 na Windows 7
Awatar użytkownika
Astur
Posty: 653
Rejestracja: wt lip 13, 2010 9:11 am

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: Astur »

W Pomocy do wyrażeń regularnych akurat ten temat jest wyjątkowo dobrze omówiony. Możesz też użyć autoformatowania do połączenia akapitów dłuższych niż x%.
Ubuntu 20.04 — OpenOffice 4.1.10
Zanim zastosujesz się do jakiejś rady, zrób kopię zapasową dokumentu, którego ona ma dotyczyć.
Wskazówka: w dokumentach używam czasem niestandardowych, bezpłatnych czcionek Gentium i Lato
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: Jan_J »

Wzorzec ^([:lower:]) pozwala odtworzyć znak dopasowany jako małą literę przez użycie $1 (numer grupy podwyrażenia).
Ale nie ma we Writerze możliwości znalezienia $([:lower:]). Fraza nie przekracza bariery końca akapitu. Takie rzeczy to tylko w Perlu.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
tomekwtz
Posty: 7
Rejestracja: pn wrz 26, 2016 4:29 pm

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: tomekwtz »

Dziękuję ci Janku za odpowiedź, Jak zrozumiałem nie mam możliwości zaznaczenia wybranych miejsc, związanych z małą literą których szukam w Writerze
OpenOffice 4.1 na Windows 7
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: Jermor »

Myślę, że jest pewien sposób, choć może ryzykowny w stosunku do długich tekstów.
Oto on:
  1. zamienić znak końca akapitu na jakiś unikatowy ciąg, np. #!#
    W polu szukaj należy wpisać tylko $
  2. Teraz w całym opracowaniu zamienić sekwencję #!#[:lower:] na spację
  3. w trzecim kroku sekwencje #!# zamienić na /n
na \n oczywiście
AOO 4.1.15, LO 7.5.9 (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.
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: Jan_J »

Myśląc wprost: nie ma możliwości. Pamiętając, że istotą świata cyfrowego jest reprezentacja symboliczna, i że do pewnego stopnia mamy władzę nad regułami tej reprezentacji -- możliwości takie zyskujemy.
Co bezpośrednio wykazał Jermor w poście wyżej.
Pamiętajmy, że Writer ma ograniczenie 64 kB (65536 bajtów) na pojedynczy akapit. Więc w całej książce na raz ten numer nie przejdzie.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
tomekwtz
Posty: 7
Rejestracja: pn wrz 26, 2016 4:29 pm

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: tomekwtz »

Po testowaniu
Drugi krok : sekwencja #!#[:lower:] powoduje znowu zaznaczenie pierwszych liter - a spacja skasowanie jej

Dziękuję wam za pomoc. Może znacie wyjście w jakimś programie do konwersji książek?
OpenOffice 4.1 na Windows 7
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: Jermor »

Dopiero rano zdałem sobie sprawę, że z błędem podałem formułę szukaj. Sądziłem jednak, że się zorientujesz, wczytując się w poprzedzającą odpowiedź Jana_J.
w szukaj powinno być #!#([:lower:]) a w zamień na: spacja i bezpośrednio po niej symbol $1
Sprawdź. Powinno zadziałać
AOO 4.1.15, LO 7.5.9 (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.
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: Jermor »

Jeszcze uwaga dla Jana _J.
Coś chyba się zmieniło, bo dokonałem takiej modyfikacji na całej książce. 88 stron, 253376 znaków.
AOO 4.1.15, LO 7.5.9 (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.
tomekwtz
Posty: 7
Rejestracja: pn wrz 26, 2016 4:29 pm

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: tomekwtz »

zacząłem sprawdzać na małym pliku i działa. Dzięki !!! Ja nie ukrywam, za słabo znam wyrażenia regularne aby orientować się w nich.
Ze względu, że Janek pisze o wielkości , muszę sprawdzić do jakiej wielkości przetrawi książkę i czy nie wynikną inne komplikację.
Jeszcze raz dziękuję wam za pomoc!
OpenOffice 4.1 na Windows 7
tomekwtz
Posty: 7
Rejestracja: pn wrz 26, 2016 4:29 pm

Re: Wyrażenie regularne -połączenia przerwanych zdań

Post autor: tomekwtz »

Książka 570 str A4 -
248 tys słów
1 mln 600 znaków ze spacjami - przerobił bez problemu
OpenOffice 4.1 na Windows 7
ODPOWIEDZ