Projekt

Ogólne

Profil

Wyrażenia regularne » Historia » Wersja 9

Marta Niedziałkowska, 2012-03-09 15:47

1 1 Marta Niedziałkowska
h1. Wyrażenia regularne
2 1 Marta Niedziałkowska
3 4 Marta Niedziałkowska
"Wyrażenia regularne":http://pl.wikipedia.org/wiki/Wyra%C5%BCenie_regularne (ang. regular expressions, w skrócie regex lub regexp) - wzorce, które opisują łańcuchy symboli, używane w redakcji technicznej Wolnych Lektur:
4 4 Marta Niedziałkowska
5 4 Marta Niedziałkowska
6 4 Marta Niedziałkowska
Najlepiej wykonywać na dużych plikach. W przypadku wyrażeń regularnych trzeba zawsze zaznaczyć: 'Regular expression' i 'Use placeholders' (w różnych edytorach jest różnie).
7 4 Marta Niedziałkowska
8 4 Marta Niedziałkowska
h1. Interpunkcja symboliczna
9 4 Marta Niedziałkowska
10 5 Marta Niedziałkowska
* `(\d)-+(\d)' na `\1--\2' ---->			półpauzy symboliczne w przedziałach liczbowych
11 4 Marta Niedziałkowska
12 5 Marta Niedziałkowska
* `(\s)-(\s)' na `\1---\2'---->			dywizy w roli myślnika na pauzy
13 4 Marta Niedziałkowska
14 5 Marta Niedziałkowska
* `^-(\s)' na `---\1'	 ---->			jak wyżej na początkach wersów
15 4 Marta Niedziałkowska
16 5 Marta Niedziałkowska
* `(\s)-$' na `\1---'	 ---->			jak wyżej na końcach wersów
17 4 Marta Niedziałkowska
18 5 Marta Niedziałkowska
* `(\s)"'; `(\s)„'; `(\s),,' na `\1,,'; `\1„' ----> cudzysłów otwierający prosty na symboliczny
19 4 Marta Niedziałkowska
20 5 Marta Niedziałkowska
* `^"' ; `^„'; `^,,' na `,,'		 ----> jak wyżej na początkach wersów
21 4 Marta Niedziałkowska
22 5 Marta Niedziałkowska
* `(<[^/]+>)"' ; '(<[^/]+>)„' na `\1,,'	 ----> jak wyżej po tagach otwierających
23 4 Marta Niedziałkowska
24 4 Marta Niedziałkowska
25 4 Marta Niedziałkowska
h1. Inne przydatne stringi stosowane w zależności od stanu tekstu
26 4 Marta Niedziałkowska
27 5 Marta Niedziałkowska
`(\w|[.,;":?!->])\s+$' zamieniamy na: `\1' ---->	 usuwanie spacji na końcach wierszy
28 4 Marta Niedziałkowska
29 5 Marta Niedziałkowska
* `P([a|e|r|t]>)' na `p\1'	 ---->		 tagi przyp. małymi literami (wymaga zaznaczenia 'case sensitive')
30 4 Marta Niedziałkowska
31 5 Marta Niedziałkowska
* `\s(<p[a|e|r|t]>)' na `\1'	 ---->		 usuwa odstępy przed znacznikami przypisów
32 4 Marta Niedziałkowska
33 5 Marta Niedziałkowska
* `\s(</p[a|e|r|t]>)' na `\1'	 ---->		 usuwa spacje na końcach przypisów
34 4 Marta Niedziałkowska
35 5 Marta Niedziałkowska
* `(\w[^?!>.\]])(</p[a|e|r|t]>)' na `\1.\2'	 ----> kropka po tekście przypisu (wymaga uprzednio powyższego stringu); przypadki z końcowym `]' trzeba sprawdzić ręcznie
36 4 Marta Niedziałkowska
37 5 Marta Niedziałkowska
* `..,(\s)' na `...\1'	 ---->			 jw.; albo z ręki: `..,' na `...'
38 4 Marta Niedziałkowska
39 5 Marta Niedziałkowska
* `(<[^/]+>)\s' na `\1'	 ---->			 usuwa spacje po tagach otwierających
40 4 Marta Niedziałkowska
41 4 Marta Niedziałkowska
* `(\/)?stara_nazwa>' na `\1nowa_nazwa>      	 uniwersalna zamiana tagów
42 4 Marta Niedziałkowska
43 4 Marta Niedziałkowska
* `[)]?<(\/)?didaskalia>[(]?' na `<\1didaskalia>' likwidacja nawiasów w didaskaliach
44 4 Marta Niedziałkowska
45 4 Marta Niedziałkowska
						 
46 5 Marta Niedziałkowska
* `(\w)-\s' na `\1'  ---->	[zaznaczone - use space... + reg. ex.]	 ---->	 myślnik i spacja do likwidacji, które zostały po przepuszczeniu przez program Johna; to efekt dzielenia wyrazów w źródle		
47 4 Marta Niedziałkowska
48 4 Marta Niedziałkowska
49 4 Marta Niedziałkowska
50 4 Marta Niedziałkowska
h1. STRINGI DO DRAMATU
51 1 Marta Niedziałkowska
52 7 Marta Niedziałkowska
53 8 Marta Niedziałkowska
* <pre>`([\w.,;":?!-/»/«/)/)]|</p[a|e|r|t]>|</motyw>|</wers_akap>|</wers_cd>|</wers_wciety>|<end .+ />)$' na `\1/' </pre>
54 8 Marta Niedziałkowska
55 8 Marta Niedziałkowska
string do wstawiania znacznikow konca wersu (/); ma on sens tylko wtedy, jesli jego uzycie nastapi po wstawieniu wszystkich innych tagow; stosowany także w utworach poetyckich; w dramatach nie należy od początku zaznaczać "replace all", bo na początku będzie wskazywał złe miejsca (lista osób), dlatego też wymaga również zaznaczenia 'Prompt on replace' [wszystko zaznaczone]
56 7 Marta Niedziałkowska
57 1 Marta Niedziałkowska
58 1 Marta Niedziałkowska
59 9 Marta Niedziałkowska
* <pre>^AKT(\s\w*)$' na: `<naglowek_akt>AKT\1</naglowek_akt>'</pre>   automatyzacja wstawiania tagow aktow - wymaga case sensitive, regular ex i use
60 1 Marta Niedziałkowska
61 9 Marta Niedziałkowska
62 9 Marta Niedziałkowska
* <pre>^SCENA(\s\w*)$' na: `<naglowek_scena>SCENA\1</naglowek_scena>'</pre>    automatyzacja wstawiania tagow scen - wymaga case sensitive, regular ex i use
63 9 Marta Niedziałkowska
64 9 Marta Niedziałkowska
* <pre>`^([A-ZĄĆĘŁŃÓŚŻŹ]{2}[A-ZĄĆĘŁŃÓŚŻŹ\s]+)$' na: `<naglowek_osoba>\1</naglowek_osoba>'</pre>   automatyzacja wstawiania tagow naglowkow kwestii; uwaga: musi byc wykonane po wstawieniu powyzszych naglowkow; bezwzglednie wymaga case sensitive, regular ex i use. ----> tylko te i bez cudzysłowów.
65 4 Marta Niedziałkowska
66 4 Marta Niedziałkowska
67 4 Marta Niedziałkowska
h1. USUWANIE PAGINACJI
68 4 Marta Niedziałkowska
69 5 Marta Niedziałkowska
([1|2|3|4|5|6|7|8|9|0]\s) NA 'SPACJA' ----> reg. ex., case. sens., use. space.
70 4 Marta Niedziałkowska
71 4 Marta Niedziałkowska
72 4 Marta Niedziałkowska
73 4 Marta Niedziałkowska
74 4 Marta Niedziałkowska
75 4 Marta Niedziałkowska
h1. PRZYDATNE SKRÓTY KLAWIATUROWE
76 5 Marta Niedziałkowska
Dotyczy Quanty plus ale może jest przydatne tez w innych programach.
77 4 Marta Niedziałkowska
78 5 Marta Niedziałkowska
Ctrl+z		 ---->				cofa akcję; w Quancie niekiedy trzeba robić dwukrotnie, bo za pierwszym razem znika cały tekst
79 4 Marta Niedziałkowska
80 5 Marta Niedziałkowska
Ctrl+Shift+i	 ---->				usuwa odstęp na początku wersu (można zaznaczać większe fragmenty tekstu; przydaje się do usunięcia odstępu w całym tekście podczas pierwszej korekty, kiedy tekst jest przepuszczony przez program Johna)
81 4 Marta Niedziałkowska
82 5 Marta Niedziałkowska
Ctrl+i		 ---->				robi odstępy od początku wersu o wielkości taba				
83 4 Marta Niedziałkowska
84 5 Marta Niedziałkowska
Ctrl+u	 ---->					wielkie litery
85 4 Marta Niedziałkowska
86 5 Marta Niedziałkowska
Ctrl+Shift+u	 ---->				małe litery