-
Notifications
You must be signed in to change notification settings - Fork 0
/
Znajdzizmien.html
393 lines (327 loc) · 31 KB
/
Znajdzizmien.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="generator" content="HelpNDoc Personal Edition 6.9.0.577">
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" href="favicon.ico"/>
<title>Znajdź i zmień</title>
<meta name="description" content="" />
<meta name="keywords" content="">
<!-- Twitter Card data -->
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Znajdź i zmień">
<meta name="twitter:description" content="">
<!-- Open Graph data -->
<meta property="og:title" content="Znajdź i zmień" />
<meta property="og:type" content="article" />
<meta property="og:description" content="" />
<meta property="og:site_name" content="Kainote pomoc" />
<!-- Bootstrap core CSS -->
<link href="vendors/bootstrap-3.4.1/css/bootstrap.min.css" rel="stylesheet"/>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<link href="vendors/bootstrap-3.4.1/css/ie10-viewport-bug-workaround.css" rel="stylesheet"/>
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="vendors/html5shiv-3.7.3/html5shiv.min.js"></script>
<script src="vendors/respond-1.4.2/respond.min.js"></script>
<![endif]-->
<!-- JsTree styles -->
<link href="vendors/jstree-3.3.7/themes/default/style.min.css" rel="stylesheet"/>
<!-- Hnd styles -->
<link href="css/layout.min.css" rel="stylesheet" />
<link href="css/effects.min.css" rel="stylesheet" />
<link href="css/theme-dark-blue.min.css" rel="stylesheet" />
<link href="css/print.min.css" rel="stylesheet" media="print" />
<style type="text/css">nav { width: 350px} @media screen and (min-width:769px) { body.md-nav-expanded div#main { margin-left: 350px} body.md-nav-expanded header { padding-left: 364px} }</style>
<!-- Content style -->
<link href="css/hnd.content.css" rel="stylesheet" />
<style type="text/css">body {background-color: #333333;}
h1 {color: white;}
h2 {color: white;}
p {color: white;}
li {color: white;}
a:link { color: #0076C5}
#topic_footer_content {color: #fff;}
.rvts26{color:white}</style>
</head>
<body class="md-nav-expanded">
<div id="skip-link">
<a href="#main-content" class="element-invisible">Skip to main content</a>
</div>
<header class="headroom">
<button class="hnd-toggle btn btn-default">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>
</button>
<h1>Kainote pomoc</h1>
</header>
<nav class="md-nav-expanded">
<!-- Nav tabs -->
<ul class="tab-tabs nav nav-tabs" role="tablist">
<li id="nav-close">
<button class="hnd-toggle btn btn-default">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
</button>
</li>
<li role="presentation" class="tab active">
<a href="#contents" id="tab-contents" aria-controls="contents" role="tab" data-toggle="tab">
<i class="glyphicon glyphicon-list"></i>
Contents
</a>
</li>
<li role="presentation" class="tab">
<a href="#index" id="tab-index" aria-controls="index" role="tab" data-toggle="tab">
<i class="glyphicon glyphicon-asterisk"></i>
Index
</a>
</li>
<li role="presentation" class="tab">
<a href="#search" id="tab-search" aria-controls="search" role="tab" data-toggle="tab">
<i class="glyphicon glyphicon-search"></i>
Search
</a>
</li>
</ul> <!-- /Nav tabs -->
<!-- Tab panes -->
<div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="contents">
<div id="toc" class="tree-container unselectable"
data-url="toc.json"
data-openlvl="1"
>
</div>
</div> <!-- /contents-->
<div role="tabpanel" class="tab-pane" id="index">
<div id="keywords" class="tree-container unselectable"
data-url="keywords.json"
data-openlvl="1"
>
</div>
</div> <!-- /index-->
<div role="tabpanel" class="tab-pane" id="search">
<div class="search-content">
<div class="search-input">
<form id="search-form">
<div class="form-group">
<div class="input-group">
<input type="text" class="form-control" id="input-search" name="input-search" placeholder="Search..." />
<span class="input-group-btn">
<button class="btn btn-default" type="submit">
<span class="glyphicon glyphicon-search" aria-hidden="true"></span>
</button>
</span>
</div>
</div>
</form>
</div> <!-- /search-input -->
<div class="search-result">
<div id="search-info"></div>
<div class="tree-container unselectable" id="search-tree"></div>
</div> <!-- /search-result -->
</div> <!-- /search-content -->
</div> <!-- /search-->
</div> <!-- /Tab panes -->
</nav>
<div id="main">
<article>
<div id="topic-content" class="container-fluid"
data-hnd-id="Znajdzizmien"
data-hnd-context="21"
data-hnd-title="Znajdź i zmień"
>
<div class="navigation">
<ol class="breadcrumb">
<li><a href="Napisy.html">Napisy</a></li>
</ol>
<div class="nav-arrows">
<div class="btn-group btn-group-xs" role="group"><a class="btn btn-default" href="Napisy.html" title="Napisy" role="button"><span class="glyphicon glyphicon-menu-up" aria-hidden="true"></span></a><a class="btn btn-default" href="Edycjanapisow.html" title="Edycja napisów" role="button"><span class="glyphicon glyphicon-menu-left" aria-hidden="true"></span></a><a class="btn btn-default" href="Zaznaczlinijki.html" title="Zaznacz linijki" role="button"><span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span></a></div>
</div>
</div>
<a id="main-content"></a>
<h2>Znajdź i zmień</h2>
<div class="main-content">
<p></p>
<h1 class="rvps4"><span class="rvts0"><span class="rvts15">Okno szukania i zmieniania</span></span></h1>
<p class="rvps2"><span class="rvts22"><br/></span></p>
<p class="rvps2"><span class="rvts25">Okno </span><span class="rvts19">szukania i zmieniania</span><span class="rvts25"> zostało rozbudowane bardziej, by mogło zrobić rzeczy, które dotąd można było robić tylko skryptami Lua.</span></p>
<h3 class="rvps8"><span class="rvts0"><span class="rvts26">Znajdź</span></span></h3>
<p class="rvps2"><span class="rvts22"><br/></span></p>
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/znajdz.png"></p>
<p class="rvps2"><span class="rvts22"><br/></span></p>
<ol style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: decimal;">
<li value="1" class="rvps6"><span class="rvts6">Tekst którego szukamy, w przypadku zaznaczonych </span><span class="rvts17">wyrażeń regularnych</span><span class="rvts6"> może przyjmować kod przy nich wykorzystywany.</span></li>
<li value="2" class="rvps6"><span class="rvts6">Zahaczenie tej opcji uwzględnia wielkość liter.</span></li>
<li value="3" class="rvps6"><span class="rvts6">Wyrażenia regularne jest to bardziej rozbudowany sposób szukania. Dla osób, nie mających nic wspólnego z programowaniem mogą wydawać się trudne, więc opiszę go trochę bardziej poniżej w tym temacie, bo nawet na polskiej Wikipedii za dużo o tym nie ma.</span></li>
<li value="4" class="rvps6"><span class="rvts6">Znajduje szukaną frazę tylko na początku tekstu, gdy pole znajdź jest puste, to znalezione zostaną wszystkie linijki.</span></li>
<li value="5" class="rvps6"><span class="rvts6">Znajduje szukaną frazę tylko na końcu tekstu, gdy pole znajdź jest puste, to znalezione zostaną wszystkie linijki.</span></li>
<li value="6" class="rvps6"><span class="rvts6">Szuka tylko w tekście linijek.</span></li>
<li value="7" class="rvps6"><span class="rvts6">Szuka tylko w tekście oryginału, gdy jest włączony tryb tłumaczenia.</span></li>
<li value="8" class="rvps6"><span class="rvts6">Szuka tylko w stylach linijek.</span></li>
<li value="9" class="rvps6"><span class="rvts6">Szuka tylko w kolumnie aktor.</span></li>
<li value="10" class="rvps6"><span class="rvts6">Szuka tylko w kolumnie efekt.</span></li>
<li value="11" class="rvps6"><span class="rvts6">Szuka we wszystkich linijkach napisów.</span></li>
<li value="12" class="rvps6"><span class="rvts6">Szuka we wszystkich zaznaczonych linijkach napisów.</span></li>
<li value="13" class="rvps6"><span class="rvts6">Szuka we wszystkich linijkach od pierwszej zaznaczonej linijki napisów.</span></li>
<li value="14" class="rvps6"><span class="rvts6">Po kliknięciu na "+" można wybrać style do których ogranicza się nasze szukanie. Ta opcja współgra z tymi trzema powyżej, a więc można wybrać, by szukało tylko linii o danym stylu w zaznaczonych linijkach.</span></li>
<li value="15" class="rvps6"><span class="rvts6">Pole tekstowe w którym wyświetlane są nazwy wybranych stylów.</span></li>
<li value="16" class="rvps6"><span class="rvts6">Znajduje frazę i zaznacza ją w polu tekstowym.</span></li>
<li value="17" class="rvps6"><span class="rvts6">Znajduje wszystko w bieżących napisach. Wyniki wyszukiwania wyświetla w osobnym oknie opisanym przy szukaniu w plikach.</span></li>
<li value="18" class="rvps6"><span class="rvts6">Znajduje wszystko we wszystkich otwartych napisach. Wyniki wyszukania tak jak wyżej wyświetla w osobnym oknie.</span></li>
<li value="19" class="rvps6"><span class="rvts6">Zamyka okno.</span></li>
</ol>
<h3 class="rvps8"><span class="rvts0"><span class="rvts26">Znajdź i zamień</span></span></h3>
<p class="rvps2"><span class="rvts16"><br/></span></p>
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/zn-i-zam1.png"></p>
<p class="rvps2"><span class="rvts16"><br/></span></p>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<ol style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: decimal;">
<li value="1" class="rvps6"><span class="rvts6">Tekst którego szukamy, w przypadku zaznaczonych </span><span class="rvts17">wyrażeń regularnych</span><span class="rvts6"> może przyjmować kod przy nich wykorzystywany.</span></li>
<li value="2" class="rvps6"><span class="rvts6">Tekst na który zmieniamy, to pole też może być puste gdy chcemy coś po prostu usunąć. To pole też obsługuje kod wyrażeń regularnych w tym przypadku głównie chodzi o oznaczenia "\cyfra od 0 do 9".</span></li>
<li value="3" class="rvps6"><span class="rvts6">Znajduje frazę i zaznacza ją w polu tekstowym.</span></li>
<li value="4" class="rvps6"><span class="rvts6">Zmienia znalezioną frazę, jeśli nie była znaleziona, to jej szuka i zmienia.</span></li>
<li value="5" class="rvps6"><span class="rvts6">Zmienia wszystko.</span></li>
<li value="6" class="rvps6"><span class="rvts6">Zmienia we wszystkich otwartych napisach</span></li>
<li value="7" class="rvps6"><span class="rvts6">Zamyka okno.</span></li>
<li value="8" class="rvps6"><span class="rvts6">Zahaczenie tej opcji uwzględnia wielkość liter.</span></li>
<li value="9" class="rvps6"><span class="rvts6">Wyrażenia regularne jest to bardziej rozbudowany sposób szukania. Dla osób, nie mających nic wspólnego z programowaniem mogą wydawać się trudne, więc opiszę go trochę bardziej poniżej w tym temacie, bo nawet na polskiej Wikipedii za dużo o tym nie ma.</span></li>
<li value="10" class="rvps6"><span class="rvts6">Znajduje szukaną frazę tylko na początku tekstu, gdy pole znajdź jest puste, to znalezione zostaną wszystkie linijki.</span></li>
<li value="11" class="rvps6"><span class="rvts6">Znajduje szukaną frazę tylko na końcu tekstu, gdy pole znajdź jest puste, to znalezione zostaną wszystkie linijki.</span></li>
<li value="12" class="rvps6"><span class="rvts6">Szuka tylko w tekście linijek.</span></li>
<li value="13" class="rvps6"><span class="rvts6">Szuka tylko w tekście oryginału, gdy jest włączony tryb tłumaczenia.</span></li>
<li value="14" class="rvps6"><span class="rvts6">Szuka tylko w stylach linijek.</span></li>
<li value="15" class="rvps6"><span class="rvts6">Szuka tylko w kolumnie aktor.</span></li>
<li value="16" class="rvps6"><span class="rvts6">Szuka tylko w kolumnie efekt.</span></li>
<li value="17" class="rvps6"><span class="rvts6">Szuka we wszystkich linijkach napisów.</span></li>
<li value="18" class="rvps6"><span class="rvts6">Szuka we wszystkich zaznaczonych linijkach napisów.</span></li>
<li value="19" class="rvps6"><span class="rvts6">Szuka we wszystkich linijkach od pierwszej zaznaczonej linijki napisów.</span></li>
<li value="20" class="rvps6"><span class="rvts6">Po kliknięciu na "+" można wybrać style do których ogranicza się nasze szukanie. Ta opcja współgra z tymi trzema powyżej, a więc można wybrać, by szukało tylko linii o danym stylu w zaznaczonych linijkach.</span></li>
<li value="21" class="rvps6"><span class="rvts6">Pole tekstowe w którym wyświetlane są nazwy wybranych stylów.</span></li>
</ol>
<h3 class="rvps8"><span class="rvts0"><span class="rvts26">Znajdź w napisach</span></span></h3>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/znajdz_w_napisach.png"></p>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps2"><span class="rvts6">To narzędzie pozwala na szukanie w napisach, które w ogóle nie są otwarte w programie.</span></p>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<ol style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: decimal;">
<li value="1" class="rvps6"><span class="rvts6">Tekst którego szukamy, w przypadku zaznaczonych </span><span class="rvts17">wyrażeń regularnych</span><span class="rvts6"> może przyjmować kod przy nich wykorzystywany.</span></li>
<li value="2" class="rvps6"><span class="rvts6">Tekst na który zmieniamy, to pole też może być puste gdy chcemy coś po prostu usunąć. To pole też obsługuje kod wyrażeń regularnych w tym przypadku głównie chodzi o oznaczenia "\cyfra od 0 do 9".</span></li>
<li value="3" class="rvps6"><span class="rvts6">Filtry Windows np. *.ass można tu też wpisać frazę która ma być w nazwie pliku gdy nam nie zależy na formacie napisów.</span></li>
<li value="4" class="rvps6"><span class="rvts6">Ścieżka do katalogu, w którym będą szukane napisy. Przycisk obok pozwala na otworzenie dialogu wyboru ścieżki.</span></li>
<li value="5" class="rvps6"><span class="rvts6">Zahaczenie tej opcji uwzględnia wielkość liter.</span></li>
<li value="6" class="rvps6"><span class="rvts6">Wyrażenia regularne jest to bardziej rozbudowany sposób szukania. Dla osób, nie mających nic wspólnego z programowaniem mogą wydawać się trudne, więc opiszę go trochę bardziej poniżej w tym temacie, bo nawet na polskiej Wikipedii za dużo o tym nie ma.</span></li>
<li value="7" class="rvps6"><span class="rvts6">Znajduje szukaną frazę tylko na początku tekstu, gdy pole znajdź jest puste, to znalezione zostaną wszystkie linijki.</span></li>
<li value="8" class="rvps6"><span class="rvts6">Znajduje szukaną frazę tylko na końcu tekstu, gdy pole znajdź jest puste, to znalezione zostaną wszystkie linijki.</span></li>
<li value="9" class="rvps6"><span class="rvts6">Szuka tylko w tekście linijek.</span></li>
<li value="10" class="rvps6"><span class="rvts6">Szuka tylko w tekście oryginału, gdy jest włączony tryb tłumaczenia.</span></li>
<li value="11" class="rvps6"><span class="rvts6">Szuka tylko w stylach linijek.</span></li>
<li value="12" class="rvps6"><span class="rvts6">Szuka tylko w kolumnie aktor.</span></li>
<li value="13" class="rvps6"><span class="rvts6">Szuka tylko w kolumnie efekt.</span></li>
<li value="14" class="rvps6"><span class="rvts6">Znajduje frazę i wyświetla w osobnym oknie w zależności od opcji (17) i (18). Można ukrywać nieinteresujące nas wyszukania klikając w "-" bądź w linię z ścieżką napisów. Dla przykładu wyszukałem błąd imienia "Seimei" w Garo Gauren no Tsuki. Użyłem wyrażeń regularnych dlatego znalazło po "Seime" wszystko co nie było "i".</span></li>
</ol>
<p class="rvps6"><img alt="" style="padding : 1px;" src="lib/Okno wynikw szukania.png"></p>
<ol style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: decimal;">
<li value="15" class="rvps6"><span class="rvts6">Zmienia we wszystkich napisach w danym katalogu, w zależności od użycia opcji (17) i (18).</span></li>
<li value="16" class="rvps6"><span class="rvts6">Zamyka okno.</span></li>
<li value="17" class="rvps6"><span class="rvts6">Szuka w podfolderach katalogu.</span></li>
<li value="18" class="rvps6"><span class="rvts6">Szuka w ukrytych folderach katalogu.</span></li>
</ol>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps2"><span class="rvts20">Wyrażenia regularne</span></p>
<p class="rvps2"><span class="rvts20"><br/></span></p>
<p class="rvps2"><span class="rvts6">Postanowiłem nie dawać żadnych konkretnych linków do Wikipedii, bo sam początkowy opis nie nadaje się dla osób nie znających matematyki wyższej i jest wcale nie potrzebny do korzystania z szukania, aczkolwiek poniższy opis pochodzi z Wikipedii i umieszczam tylko to co działa.</span></p>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside;">
<li class="rvps6"><span class="rvts6">Każdy znak, oprócz znaków specjalnych, określa sam siebie, np. </span><span class="rvts17">a</span><span class="rvts6"> określa łańcuch złożony ze znaku </span><span class="rvts17">a</span><span class="rvts6">.</span></li>
<li class="rvps6"><span class="rvts6">Kolejne symbole oznaczają, że w łańcuchu muszą wystąpić dokładnie te symbole w dokładnie takiej samej kolejności, np. </span><span class="rvts17">ab</span><span class="rvts6"> oznacza że łańcuch musi składać się z litery </span><span class="rvts17">a</span><span class="rvts6"> poprzedzającej literę </span><span class="rvts17">b</span><span class="rvts6">.</span></li>
<li class="rvps6"><span class="rvts6">Kropka </span><span class="rvts17">.</span><span class="rvts6"> oznacza dowolny znak z wyjątkiem znaku nowego wiersza.</span></li>
<li class="rvps6"><span class="rvts6">Znaki specjalne poprzedzone odwrotnym ukośnikiem </span><span class="rvts17">\</span><span class="rvts6"> powodują, że poprzedzanym znakom nie są nadawane żadne dodatkowe znaczenia i oznaczają same siebie, np. </span><span class="rvts17">\.</span><span class="rvts6"> oznacza znak kropki (a nie dowolny znak).</span></li>
<li class="rvps6"><span class="rvts6">Zestaw znaków między nawiasami kwadratowymi oznacza jeden dowolny znak objęty nawiasami kwadratowymi, np. </span><span class="rvts17">[abc]</span><span class="rvts6"> oznacza </span><span class="rvts17">a</span><span class="rvts6">, </span><span class="rvts17">b</span><span class="rvts6"> lub </span><span class="rvts17">c</span><span class="rvts6">. Można używać także przedziałów: </span><span class="rvts17">[a-c]</span><span class="rvts6">. Między nawiasami kwadratowymi:</span></li>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 48px; list-style-position: outside; list-style-type: square;">
<li style="margin-left: 0px" class="rvps7"><span class="rvts6">Daszek </span><span class="rvts17">^</span><span class="rvts6"> na początku zestawu oznacza wszystkie znaki oprócz tych z zestawu.</span></li>
<li style="margin-left: 0px" class="rvps7"><span class="rvts6">Aby uniknąć niejasności, znaki </span><span class="rvts20">-</span><span class="rvts6"> (łącznik) i </span><span class="rvts17">]</span><span class="rvts6"> (zamknięcie nawiasu kwadratowego) zapisywane są na skraju zestawu np. </span><span class="rvts17">[0-9-] </span><span class="rvts6">co znaczy że wyszukiwane są liczby zarówno ujemne jak i dodatnie </span></li>
</ul>
<li class="rvps6"><span class="rvts6">Większość znaków specjalnych w tym miejscu traci swoje znaczenie.</span></li>
<li class="rvps6"><span class="rvts6">Pomiędzy nawiasami okrągłymi ( i ) grupuje się symbole, które można później wykorzysta z powrotem w polu </span><span class="rvts17">zmień </span><span class="rvts6">wpisując odwrotny ukośnik z numerem wystąpienia np</span><span class="rvts17"> \1</span></li>
<li class="rvps6"><span class="rvts6">Gwiazdka * po symbolu (nawiasie, pojedynczym znaku) nazywana jest domknięciem Kleene'a i oznacza zero lub więcej wystąpień poprzedzającego wyrażenia np. </span><span class="rvts17">{.*} </span><span class="rvts6">znajdzie nam wszystko co jest między pierwszym wystąpieniem </span><span class="rvts17">{</span><span class="rvts6"> i ostatnim wystąpieniem </span><span class="rvts17">}</span><span class="rvts6">.</span><span class="rvts17"> </span><span class="rvts6">sam ten przykład nie jest zbyt użyteczny, ale dodając znak zapytania już jak najbardziej, omówione to będzie poniżej.</span></li>
<li class="rvps6"><span class="rvts6">Znak zapytania </span><span class="rvts17">?</span><span class="rvts6"> po symbolu oznacza najwyżej jedno (być może zero) wystąpienie poprzedzającego wyrażenia.</span></li>
<li class="rvps6"><span class="rvts6">Plus </span><span class="rvts17">+</span><span class="rvts6"> po symbolu oznacza co najmniej jedno wystąpienie poprzedzającego go wyrażenia. Działa to podobnie jak </span><span class="rvts17">*</span><span class="rvts6"> tyle że w tym przypadku same nawiasy </span><span class="rvts17">{}</span><span class="rvts6"> nie zostaną znalezione, musi być między nimi przynajmniej jeden znak.</span></li>
<li class="rvps6"><span class="rvts6">Daszek </span><span class="rvts17">^</span><span class="rvts6"> oznacza początek wiersza, dolar </span><span class="rvts17">$</span><span class="rvts6"> oznacza koniec wiersza.</span></li>
<li class="rvps6"><span class="rvts6">Pionowa kreska </span><span class="rvts17">|</span><span class="rvts6"> to operator </span><span class="rvts17">lub</span><span class="rvts6"> np. jeśli napiszemy </span><span class="rvts17">a|b|c</span><span class="rvts6"> oznacza to, że w danym wyrażeniu może wystąpić </span><span class="rvts17">a</span><span class="rvts6"> lub </span><span class="rvts17">b</span><span class="rvts6"> lub </span><span class="rvts17">c</span><span class="rvts6">.</span></li>
</ul>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: square;">
<li class="rvps2"><span class="rvts17">Wyrażenia zachłanne</span><span class="rvts6"> czyli używające </span><span class="rvts17">*</span><span class="rvts6"> lub </span><span class="rvts17">+ </span><span class="rvts6">nie do końca są nam przydatna bo "zjadają" wszystko do ostatniego wystąpienia znaku między którymi się znajdują np </span><span class="rvts17">{*} </span><span class="rvts6">w linii "{\fs45\b1\i1\3c&H931D04&\}Był to {\3c&H938F04&}ostatni {\3c&H720493&}odcinek {\3c&H1B0493&}z napisami..." zwróci nam {\fs45\b1\i1\3c&H931D04&\}Był to {\3c&H938F04&}ostatni {\3c&H720493&}odcinek {\3c&H1B0493&}, a przy usuwaniu wszystkich tagów ma usuwać tylko nawiasy z tagami a nie to, co między nimi jest.</span></li>
<li class="rvps2"><span class="rvts17">Wyrażenia leniwe</span><span class="rvts6">, w tym przypadku wystarczy dodać </span><span class="rvts17">?</span><span class="rvts6"> po </span><span class="rvts17">*</span><span class="rvts6"> bądź </span><span class="rvts17">+ </span><span class="rvts6">albo wykorzystać to co ja często wykorzystuję czyli </span><span class="rvts17">[^}]*</span><span class="rvts6"> to wymusi zatrzymanie się na pierwszej klamrze oczywiście aby móc wkleić ten tekst ponownie dodając jakieś znaki do niego należy skorzystać z nawiasów </span><span class="rvts17">( )</span><span class="rvts6">. Przykładowo aby wkleić z powrotem zawartość zawiasów wystarczy wpisać </span><span class="rvts17">{(.*?)} </span><span class="rvts6">a w zmień </span><span class="rvts17">\1 </span><span class="rvts6">oczywiście można dopisać po albo przed \1 jakieś inne znaki to wklei je razem z tym co znajdzie. Jedyną wadą tego systemu jest to, że nie można przeprowadzać na znalezionych liczbach żadnych operacji matematycznych, co oczywiście jest za to możliwe w </span><span class="rvts17">Lua</span><span class="rvts6">, bo tam są jeszcze bardziej rozbudowane wyrażenia regularne, no i w Lua można też stosować </span><span class="rvts17">-</span><span class="rvts6"> jako </span><span class="rvts17">wyrażenia leniwe </span><span class="rvts6">czyli np</span><span class="rvts17"> {(.-)}</span><span class="rvts6">, więcej odniesień do tego opiszę jednak przy skryptach Lua.</span></li>
</ul>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps6"><span class="rvts24">A teraz trochę przykładów, które mogą się na coś przydać:</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside;">
<li class="rvps6"><span class="rvts6">Chcemy zmienić wartość jakiegoś taga np \be z 1 na 8 normalnie w tym przypadku można napisać \be1 w wyszukaj i \be8 w zmień, ale co gdy be jest różnych wartości? Tą metodą tego nie zrobimy a więc wystarczy tylko wpisać </span><span class="rvts17">\\be[0-9]</span><span class="rvts6"> w wyszukaj i </span><span class="rvts17">\\be8</span><span class="rvts6"> w zmień (w zmień też należy stosować podwójne odwrócone ukośniki (backslashe), pojedyncze są usuwane traktowane jako znak specjalny), oczywiście wyrażenia regularne muszą być zahaczone. W tym przypadku znajdzie be od 0 do 9 można np dać od </span><span class="rvts17">1-5</span><span class="rvts6"> albo </span><span class="rvts17">[1357]</span><span class="rvts6"> wszystko zależy czego szukamy.</span></li>
<li class="rvps6"><span class="rvts6">Problemy mogą sprawić nawiasy, bo mnie też sprawiały. więc przykład z \pos, w wyszukaj wpisujemy </span><span class="rvts17">\\pos\(([^,]*),([^)]*)\)</span><span class="rvts6"> otóż w pierwszym nawiasie "zjadamy" znaki do pierwszego przecinka a w drugim do nawiasu zamykającego, by wykorzystać zjedzone wartości z powrotem trzeba napisać w zmień </span><span class="rvts17">\\pos(\1,\2)</span><span class="rvts6"> nie trzeba już stawiać backslashów (odwróconych ukośników) przy nawiasie, bo on tu nie jest uznawany za znak specjalny, dla przykładu </span><span class="rvts17">\\pos(\2,\1)</span><span class="rvts6"> zamienia wartości albo można nadać obie wartości własne.</span></li>
<li class="rvps6"><span class="rvts6">Zmienić też można \move na \pos analogicznie wpisujemy w szukaj </span><span class="rvts17">\\move\(([^,]*),([^,]*),([^,]*),([^)]*)\) </span><span class="rvts6">a w zmień </span><span class="rvts17">\\pos(\1,\2)</span><span class="rvts6"> albo \</span><span class="rvts17">\pos(\3,\4)</span><span class="rvts6">, w zależności od tego, które wartości chcemy.</span></li>
<li class="rvps6"><span class="rvts6">Przykład z szukaniem koloru </span><span class="rvts17">1c</span><span class="rvts6">, który też może być zapisywany jako </span><span class="rvts17">c</span><span class="rvts6">, wystarczy w szukaj dać </span><span class="rvts17">\\1?c&H.*?& </span><span class="rvts6">w tym przypadku są dwa pytajniki, tyle że pierwszy pozwala na przejście samego c, czyli jedynka może być ale nie musi, pytajnik odnosi się tylko do jednego znaku go poprzedzającego, czyli jak napiszemy </span><span class="rvts17">\\3c?&H.*?&</span><span class="rvts6"> to może też znajdować alphę. Drugi odnosi się do wyrażenia leniwego. W zmień wystarczy wpisać nowy kolor, nie zapominając o podwójnym backslashu.</span></li>
</ul>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps2"><span class="rvts20"><br/></span></p>
<p></p>
<p class="rvps5" style="clear: both;"><span class="rvts12">Created with the Personal Edition of HelpNDoc: </span><a class="rvts13" href="https://www.helpndoc.com/feature-tour/create-help-files-for-the-qt-help-framework">Create cross-platform Qt Help files</a></p>
</div>
<div id="topic_footer"><div id="topic_footer_content">Copyright © 2012 - 20 by Bakura. All Rights Reserved.</div></div>
</div> <!-- /#topic-content -->
</article>
<footer></footer>
</div> <!-- /#main -->
<div class="mask" data-toggle="sm-nav-expanded"></div>
<!-- Modal -->
<div class="modal fade" id="hndModal" tabindex="-1" role="dialog" aria-labelledby="hndModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="hndModalLabel"></h4>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary modal-btn-close" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<!-- Scripts -->
<script src="vendors/jquery-3.4.1/jquery.min.js"></script>
<script src="vendors/bootstrap-3.4.1/js/bootstrap.min.js"></script>
<script src="vendors/markjs-8.11.1/jquery.mark.min.js"></script>
<script src="vendors/uri-1.19.1/uri.min.js"></script>
<script src="vendors/imageMapResizer-1.0.7/imageMapResizer.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="vendors/bootstrap-3.4.1/js/ie10-viewport-bug-workaround.js"></script>
<!-- Headroom -->
<script src="vendors/headroom-0.9.4/headroom.min.js"></script>
<script src="vendors/headroom-0.9.4/jquery.headroom.min.js"></script>
<!-- JsTree -->
<script src="vendors/jstree-3.3.7/jstree.min.js"></script>
<!-- HelpNDoc scripts -->
<script src="translations.js"></script>
<script src="js/hndsd.min.js"></script>
<script src="js/hndse.min.js"></script>
<script src="js/app.min.js"></script>
<!-- Scripts -->
<script>
$(function() {
// Create the app
var app = new Hnd.App();
// Update translations
hnd_ut(app);
// Instanciate imageMapResizer
imageMapResize();
// Custom JS
// Boot the app
app.Boot();
});
</script>
</body>
</html>