OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.64
[linuxjm/LDP_man-pages.git] / po4a / regexp / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2014-04-17 13:14+0900\n"
10 "PO-Revision-Date: 2014-04-14 01:44+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man3/fnmatch.3:28
20 #, no-wrap
21 msgid "FNMATCH"
22 msgstr "FNMATCH"
23
24 #. type: TH
25 #: build/C/man3/fnmatch.3:28
26 #, no-wrap
27 msgid "2000-10-15"
28 msgstr "2000-10-15"
29
30 #. type: TH
31 #: build/C/man3/fnmatch.3:28 build/C/man3/glob.3:34 build/C/man3/re_comp.3:27
32 #: build/C/man3/regex.3:30
33 #, no-wrap
34 msgid "GNU"
35 msgstr "GNU"
36
37 #. type: TH
38 #: build/C/man3/fnmatch.3:28 build/C/man3/glob.3:34 build/C/man7/glob.7:26
39 #: build/C/man3/re_comp.3:27 build/C/man3/regex.3:30 build/C/man7/regex.7:37
40 #: build/C/man3/wordexp.3:24
41 #, no-wrap
42 msgid "Linux Programmer's Manual"
43 msgstr "Linux Programmer's Manual"
44
45 #. type: SH
46 #: build/C/man3/fnmatch.3:29 build/C/man3/glob.3:35 build/C/man7/glob.7:27
47 #: build/C/man3/re_comp.3:28 build/C/man3/regex.3:31 build/C/man7/regex.7:38
48 #: build/C/man3/wordexp.3:25
49 #, no-wrap
50 msgid "NAME"
51 msgstr "名前"
52
53 #. type: Plain text
54 #: build/C/man3/fnmatch.3:31
55 msgid "fnmatch - match filename or pathname"
56 msgstr "fnmatch - ファイル名またはパス名へのマッチを行う"
57
58 #. type: SH
59 #: build/C/man3/fnmatch.3:31 build/C/man3/glob.3:37 build/C/man3/re_comp.3:30
60 #: build/C/man3/regex.3:33 build/C/man3/wordexp.3:27
61 #, no-wrap
62 msgid "SYNOPSIS"
63 msgstr "書式"
64
65 #. type: Plain text
66 #: build/C/man3/fnmatch.3:34
67 #, no-wrap
68 msgid "B<#include E<lt>fnmatch.hE<gt>>\n"
69 msgstr "B<#include E<lt>fnmatch.hE<gt>>\n"
70
71 #. type: Plain text
72 #: build/C/man3/fnmatch.3:36
73 #, no-wrap
74 msgid "B<int fnmatch(const char *>I<pattern>B<, const char *>I<string>B<, int >I<flags>B<);>\n"
75 msgstr "B<int fnmatch(const char *>I<pattern>B<, const char *>I<string>B<, int >I<flags>B<);>\n"
76
77 #. type: SH
78 #: build/C/man3/fnmatch.3:37 build/C/man3/glob.3:49 build/C/man7/glob.7:29
79 #: build/C/man3/re_comp.3:40 build/C/man3/regex.3:49 build/C/man7/regex.7:40
80 #: build/C/man3/wordexp.3:42
81 #, no-wrap
82 msgid "DESCRIPTION"
83 msgstr "説明"
84
85 #. type: Plain text
86 #: build/C/man3/fnmatch.3:45
87 msgid ""
88 "The B<fnmatch>()  function checks whether the I<string> argument matches the "
89 "I<pattern> argument, which is a shell wildcard pattern."
90 msgstr ""
91 "B<fnmatch>()  関数は I<strings> 引き数が I<pattern> 引き数にマッチするかを"
92 "チェックする。 I<pattern> にはシェルのワイルドカードパターンを与える。"
93
94 #. type: Plain text
95 #: build/C/man3/fnmatch.3:50
96 msgid ""
97 "The I<flags> argument modifies the behavior; it is the bitwise OR of zero or "
98 "more of the following flags:"
99 msgstr ""
100 "I<flags> 引き数により動作を変更できる。 I<flags> は以下のフラグのビット毎の "
101 "OR で指定する。"
102
103 #. type: TP
104 #: build/C/man3/fnmatch.3:50
105 #, no-wrap
106 msgid "B<FNM_NOESCAPE>"
107 msgstr "B<FNM_NOESCAPE>"
108
109 #. type: Plain text
110 #: build/C/man3/fnmatch.3:54
111 msgid ""
112 "If this flag is set, treat backslash as an ordinary character, instead of an "
113 "escape character."
114 msgstr ""
115 "このフラグがセットされていると、バックスラッシュ (\\e) をエスケープ文字 では"
116 "なく通常の文字として扱う。"
117
118 #. type: TP
119 #: build/C/man3/fnmatch.3:54
120 #, no-wrap
121 msgid "B<FNM_PATHNAME>"
122 msgstr "B<FNM_PATHNAME>"
123
124 #. type: Plain text
125 #: build/C/man3/fnmatch.3:62
126 msgid ""
127 "If this flag is set, match a slash in I<string> only with a slash in "
128 "I<pattern> and not by an asterisk (*) or a question mark (?) metacharacter, "
129 "nor by a bracket expression ([]) containing a slash."
130 msgstr ""
131 "このフラグがセットされていると、 I<string> 中のスラッシュ (/) を I<pattern> "
132 "にあるスラッシュそのものにだけマッチさせ、 アスタリスク (*) や疑問符 (?) のメ"
133 "タキャラクタや、 スラッシュを含むブラケット表現 ([]) にはマッチさせない。"
134
135 #. type: TP
136 #: build/C/man3/fnmatch.3:62
137 #, no-wrap
138 msgid "B<FNM_PERIOD>"
139 msgstr "B<FNM_PERIOD>"
140
141 #. type: Plain text
142 #: build/C/man3/fnmatch.3:73
143 msgid ""
144 "If this flag is set, a leading period in I<string> has to be matched exactly "
145 "by a period in I<pattern>.  A period is considered to be leading if it is "
146 "the first character in I<string>, or if both B<FNM_PATHNAME> is set and the "
147 "period immediately follows a slash."
148 msgstr ""
149 "このフラグがセットされていると、 I<string> の先頭ピリオド (leading period) "
150 "は I<pattern> 中のピリオドそのものにしかマッチしない。先頭ピリオドとは、 "
151 "I<string> の最初の文字位置にあるピリオドのことである。ただし B<FNM_PATHNAME> "
152 "フラグが同時にセットされている場合には、スラッシュの直後に続くピリオド も先頭"
153 "ピリオドとみなされる。"
154
155 #. type: TP
156 #: build/C/man3/fnmatch.3:73
157 #, no-wrap
158 msgid "B<FNM_FILE_NAME>"
159 msgstr "B<FNM_FILE_NAME>"
160
161 #. type: Plain text
162 #: build/C/man3/fnmatch.3:77
163 msgid "This is a GNU synonym for B<FNM_PATHNAME>."
164 msgstr "これは B<FNM_PATHNAME> に対する GNU での同義語である."
165
166 #. type: TP
167 #: build/C/man3/fnmatch.3:77
168 #, no-wrap
169 msgid "B<FNM_LEADING_DIR>"
170 msgstr "B<FNM_LEADING_DIR>"
171
172 #. type: Plain text
173 #: build/C/man3/fnmatch.3:85
174 msgid ""
175 "If this flag (a GNU extension) is set, the pattern is considered to be "
176 "matched if it matches an initial segment of I<string> which is followed by a "
177 "slash.  This flag is mainly for the internal use of glibc and is implemented "
178 "only in certain cases."
179 msgstr ""
180 "このフラグは GNU での拡張である。これがセットされている場合には、 パターンが "
181 "I<string> の最初の部分 (にスラッシュを付けたもの) にマッチすれば、 マッチした"
182 "ものとみなされる。 このフラグは主として glibc で内部的に使用するもので、その"
183 "ためにのみ実装されている。"
184
185 #. type: TP
186 #: build/C/man3/fnmatch.3:85
187 #, no-wrap
188 msgid "B<FNM_CASEFOLD>"
189 msgstr "B<FNM_CASEFOLD>"
190
191 #. type: Plain text
192 #: build/C/man3/fnmatch.3:89
193 msgid ""
194 "If this flag (a GNU extension) is set, the pattern is matched case-"
195 "insensitively."
196 msgstr ""
197 "このフラグは GNU での拡張である。これがセットされている場合には、 パターンの"
198 "マッチに大文字小文字が区別されない。"
199
200 #. type: SH
201 #: build/C/man3/fnmatch.3:89 build/C/man3/glob.3:262 build/C/man3/re_comp.3:58
202 #: build/C/man3/regex.3:247 build/C/man3/wordexp.3:157
203 #, no-wrap
204 msgid "RETURN VALUE"
205 msgstr "返り値"
206
207 #. type: Plain text
208 #: build/C/man3/fnmatch.3:96
209 msgid ""
210 "Zero if I<string> matches I<pattern>, B<FNM_NOMATCH> if there is no match or "
211 "another nonzero value if there is an error."
212 msgstr ""
213 "I<string> が I<pattern> にマッチすれば 0 を返す。マッチしなかった場合には "
214 "B<FNM_NOMATCH> を返す。エラーの場合にはそれ以外の非ゼロ値を返す。"
215
216 #. type: SH
217 #: build/C/man3/fnmatch.3:96 build/C/man3/glob.3:276 build/C/man3/re_comp.3:73
218 #: build/C/man3/regex.3:304 build/C/man3/wordexp.3:187
219 #, no-wrap
220 msgid "CONFORMING TO"
221 msgstr "準拠"
222
223 #. type: Plain text
224 #: build/C/man3/fnmatch.3:101
225 msgid ""
226 "POSIX.2.  The B<FNM_FILE_NAME>, B<FNM_LEADING_DIR>, and B<FNM_CASEFOLD> "
227 "flags are GNU extensions."
228 msgstr ""
229 "POSIX.2.  B<FNM_FILE_NAME>, B<FNM_LEADING_DIR>, B<FNM_CASEFOLD> フラグは GNU "
230 "の拡張である。"
231
232 #. type: SH
233 #: build/C/man3/fnmatch.3:101 build/C/man3/glob.3:319 build/C/man7/glob.7:208
234 #: build/C/man3/re_comp.3:79 build/C/man3/regex.3:306 build/C/man7/regex.7:287
235 #: build/C/man3/wordexp.3:213
236 #, no-wrap
237 msgid "SEE ALSO"
238 msgstr "関連項目"
239
240 #. type: Plain text
241 #: build/C/man3/fnmatch.3:107
242 msgid "B<sh>(1), B<glob>(3), B<scandir>(3), B<wordexp>(3), B<glob>(7)"
243 msgstr "B<sh>(1), B<glob>(3), B<scandir>(3), B<wordexp>(3), B<glob>(7)"
244
245 #. type: SH
246 #: build/C/man3/fnmatch.3:107 build/C/man3/glob.3:330 build/C/man7/glob.7:214
247 #: build/C/man3/re_comp.3:83 build/C/man3/regex.3:312 build/C/man7/regex.7:292
248 #: build/C/man3/wordexp.3:216
249 #, no-wrap
250 msgid "COLOPHON"
251 msgstr "この文書について"
252
253 #. type: Plain text
254 #: build/C/man3/fnmatch.3:114 build/C/man3/glob.3:337 build/C/man7/glob.7:221
255 #: build/C/man3/re_comp.3:90 build/C/man3/regex.3:319 build/C/man7/regex.7:299
256 #: build/C/man3/wordexp.3:223
257 #, fuzzy
258 #| msgid ""
259 #| "This page is part of release 3.63 of the Linux I<man-pages> project.  A "
260 #| "description of the project, and information about reporting bugs, can be "
261 #| "found at \\%http://www.kernel.org/doc/man-pages/."
262 msgid ""
263 "This page is part of release 3.64 of the Linux I<man-pages> project.  A "
264 "description of the project, and information about reporting bugs, can be "
265 "found at \\%http://www.kernel.org/doc/man-pages/."
266 msgstr ""
267 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.63 の一部\n"
268 "である。プロジェクトの説明とバグ報告に関する情報は\n"
269 "http://www.kernel.org/doc/man-pages/ に書かれている。"
270
271 #. type: TH
272 #: build/C/man3/glob.3:34 build/C/man7/glob.7:26
273 #, no-wrap
274 msgid "GLOB"
275 msgstr "GLOB"
276
277 #. type: TH
278 #: build/C/man3/glob.3:34
279 #, no-wrap
280 msgid "2007-10-10"
281 msgstr "2007-10-10"
282
283 #. type: Plain text
284 #: build/C/man3/glob.3:37
285 msgid ""
286 "glob, globfree - find pathnames matching a pattern, free memory from glob()"
287 msgstr ""
288 "glob, globfree - パターンにマッチするパス名を見付ける。glob() によっ て確保さ"
289 "れたメモリ領域を解放する。"
290
291 #. type: Plain text
292 #: build/C/man3/glob.3:40
293 #, no-wrap
294 msgid "B<#include E<lt>glob.hE<gt>>\n"
295 msgstr "B<#include E<lt>glob.hE<gt>>\n"
296
297 #. type: Plain text
298 #: build/C/man3/glob.3:42
299 #, no-wrap
300 msgid "B<int glob(const char *>I<pattern>B<, int >I<flags>B<,>\n"
301 msgstr "B<int glob(const char *>I<pattern>B<, int >I<flags>B<,>\n"
302
303 #. type: Plain text
304 #: build/C/man3/glob.3:44
305 #, no-wrap
306 msgid "B<         int (*>I<errfunc>B<) (const char *>I<epath>B<, int >I<eerrno>B<),>\n"
307 msgstr "B<         int (*>I<errfunc>B<) (const char *>I<epath>B<, int >I<eerrno>B<),>\n"
308
309 #. type: Plain text
310 #: build/C/man3/glob.3:46
311 #, no-wrap
312 msgid "B<         glob_t *>I<pglob>B<);>\n"
313 msgstr "B<         glob_t *>I<pglob>B<);>\n"
314
315 #. type: Plain text
316 #: build/C/man3/glob.3:48
317 #, no-wrap
318 msgid "B<void globfree(glob_t *>I<pglob>B<);>\n"
319 msgstr "B<void globfree(glob_t *>I<pglob>B<);>\n"
320
321 #. type: Plain text
322 #: build/C/man3/glob.3:59
323 msgid ""
324 "The B<glob>()  function searches for all the pathnames matching I<pattern> "
325 "according to the rules used by the shell (see B<glob>(7)).  No tilde "
326 "expansion or parameter substitution is done; if you want these, use "
327 "B<wordexp>(3)."
328 msgstr ""
329 "B<glob>()  関数はシェルが用いているルール (B<glob>(7)  参照) に基づいてパター"
330 "ン I<pattern> にマッチするすべてのパス名を検索する。 チルダ (~) の展開やパラ"
331 "メータ置換は行われない。それらを行いたい場合は B<wordexp>(3)  を使うとよい。"
332
333 #. type: Plain text
334 #: build/C/man3/glob.3:65
335 msgid ""
336 "The B<globfree>()  function frees the dynamically allocated storage from an "
337 "earlier call to B<glob>()."
338 msgstr ""
339 "B<globfree>()  関数は前に呼ばれた B<glob>()  により動的に確保された記憶領域を"
340 "解放する。"
341
342 #. type: Plain text
343 #: build/C/man3/glob.3:76
344 msgid ""
345 "The results of a B<glob>()  call are stored in the structure pointed to by "
346 "I<pglob>.  This structure is of type I<glob_t> (declared in I<E<lt>glob."
347 "hE<gt>>)  and includes the following elements defined by POSIX.2 (more may "
348 "be present as an extension):"
349 msgstr ""
350 "B<glob>()  の結果は I<pglob> がポイントする構造体に返される。 I<pglob> は "
351 "I<glob_t> 型の構造体である。 I<glob_t> 型は I<E<lt>glob.hE<gt>> 内で宣言され"
352 "ており、以下の要素を含んでいる。これらの要素は POSIX.2 で定義 されている (さ"
353 "らに多くの要素が拡張として入っているかもしれない)。"
354
355 #. type: Plain text
356 #: build/C/man3/glob.3:85
357 #, no-wrap
358 msgid ""
359 "typedef struct {\n"
360 "    size_t   gl_pathc;    /* Count of paths matched so far  */\n"
361 "    char   **gl_pathv;    /* List of matched pathnames.  */\n"
362 "    size_t   gl_offs;     /* Slots to reserve in I<gl_pathv>.  */\n"
363 "} glob_t;\n"
364 msgstr ""
365 "typedef struct {\n"
366 "    size_t   gl_pathc;    /* 今までにマッチしたパスの数 */\n"
367 "    char   **gl_pathv;    /* マッチしたパス名のリスト */\n"
368 "    size_t   gl_offs;     /* I<gl_pathv> 内に確保するスロット数 */\n"
369 "} glob_t;\n"
370
371 #. type: Plain text
372 #: build/C/man3/glob.3:89
373 msgid "Results are stored in dynamically allocated storage."
374 msgstr "結果は動的に確保された記憶領域に入れられる。"
375
376 #. type: Plain text
377 #: build/C/man3/glob.3:95
378 msgid ""
379 "The argument I<flags> is made up of the bitwise OR of zero or more the "
380 "following symbolic constants, which modify the behavior of B<glob>():"
381 msgstr ""
382 "パラメータ I<flags> には以下の示す定数のうち、指定したいものをビットごとの "
383 "OR で与える (一つも 指定しなくてもよい)。これによって B<glob>()  の動作を変更"
384 "できる。"
385
386 #. type: TP
387 #: build/C/man3/glob.3:95
388 #, no-wrap
389 msgid "B<GLOB_ERR>"
390 msgstr "B<GLOB_ERR>"
391
392 #. type: Plain text
393 #: build/C/man3/glob.3:103
394 msgid ""
395 "Return upon a read error (because a directory does not have read permission, "
396 "for example).  By default, B<glob>()  attempts carry on despite errors, "
397 "reading all of the directories that it can."
398 msgstr ""
399 "(例えば、ディレクトリに読み取り許可属性が無い場合などで)  読み取りエラーが発"
400 "生した際に関数から戻る。 デフォルトでは、エラーに関わらず 読み取り可能なディ"
401 "レクトリを全てについて読み取りを実行しようとする。"
402
403 #. type: TP
404 #: build/C/man3/glob.3:103
405 #, no-wrap
406 msgid "B<GLOB_MARK>"
407 msgstr "B<GLOB_MARK>"
408
409 #. type: Plain text
410 #: build/C/man3/glob.3:106
411 msgid "Append a slash to each path which corresponds to a directory."
412 msgstr "ディレクトリに対応する各々のパスにスラッシュを付加する。"
413
414 #. type: TP
415 #: build/C/man3/glob.3:106
416 #, no-wrap
417 msgid "B<GLOB_NOSORT>"
418 msgstr "B<GLOB_NOSORT>"
419
420 #. type: Plain text
421 #: build/C/man3/glob.3:111
422 msgid ""
423 "Don't sort the returned pathnames.  The only reason to do this is to save "
424 "processing time.  By default, the returned pathnames are sorted."
425 msgstr ""
426 "返されるパス名のソートを行わない。 ソートを行わない理由は、処理時間を節約する"
427 "ためだけである。 デフォルトでは、返されるパス名はソートされる。"
428
429 #. type: TP
430 #: build/C/man3/glob.3:111
431 #, no-wrap
432 msgid "B<GLOB_DOOFFS>"
433 msgstr "B<GLOB_DOOFFS>"
434
435 #. type: Plain text
436 #: build/C/man3/glob.3:118
437 msgid ""
438 "Reserve I<pglob-E<gt>gl_offs> slots at the beginning of the list of strings "
439 "in I<pglob-E<gt>pathv>.  The reserved slots contain null pointers."
440 msgstr ""
441 "I<pglob-E<gt>pathv> の文字列リストの先頭に I<pglob-E<gt>gl_offs> スロット分の"
442 "領域を予約する。 予約されたスロットには NULL ポインタが入る。"
443
444 #. type: TP
445 #: build/C/man3/glob.3:118
446 #, no-wrap
447 msgid "B<GLOB_NOCHECK>"
448 msgstr "B<GLOB_NOCHECK>"
449
450 #. type: Plain text
451 #: build/C/man3/glob.3:126
452 msgid ""
453 "If no pattern matches, return the original pattern.  By default, B<glob>()  "
454 "returns B<GLOB_NOMATCH> if there are no matches."
455 msgstr ""
456 "マッチするパターンがなければ、元のパターンを返す。 デフォルトでは、 B<glob>"
457 "()  はマッチするパターンがなければ B<GLOB_NOMATCH> を返す。"
458
459 #. type: TP
460 #: build/C/man3/glob.3:126
461 #, no-wrap
462 msgid "B<GLOB_APPEND>"
463 msgstr "B<GLOB_APPEND>"
464
465 #. type: Plain text
466 #: build/C/man3/glob.3:133
467 msgid ""
468 "Append the results of this call to the vector of results returned by a "
469 "previous call to B<glob>().  Do not set this flag on the first invocation of "
470 "B<glob>()."
471 msgstr ""
472 "この呼び出しでの結果を直前の B<glob>()  の呼び出しで返された結果のベクトルに"
473 "追加する。最初の B<glob>()  の呼び出しの際にはこのフラグを設定してはいけな"
474 "い。"
475
476 #. type: TP
477 #: build/C/man3/glob.3:133
478 #, no-wrap
479 msgid "B<GLOB_NOESCAPE>"
480 msgstr "B<GLOB_NOESCAPE>"
481
482 #. type: Plain text
483 #: build/C/man3/glob.3:140
484 msgid ""
485 "Don't allow backslash (\\(aq\\e\\(aq) to be used as an escape character.  "
486 "Normally, a backslash can be used to quote the following character, "
487 "providing a mechanism to turn off the special meaning metacharacters."
488 msgstr ""
489 "バックスラッシュ (\\(aq\\e\\(aq) をエスケープ用文字として使用できない。 通常"
490 "は、バックスラッシュを使って、次に続く文字をクォートすることで、 特別な意味を"
491 "持つメタキャラクタを無効することができる。"
492
493 #. type: Plain text
494 #: build/C/man3/glob.3:144
495 msgid ""
496 "I<flags> may also include any of the following, which are GNU extensions and "
497 "not defined by POSIX.2:"
498 msgstr ""
499 "I<flags> には以下に示すものも指定できる。 これらは GNU で拡張されたもので、"
500 "POSIX.2 では定義されていない。"
501
502 #. type: TP
503 #: build/C/man3/glob.3:144
504 #, no-wrap
505 msgid "B<GLOB_PERIOD>"
506 msgstr "B<GLOB_PERIOD>"
507
508 #. type: Plain text
509 #: build/C/man3/glob.3:148
510 msgid ""
511 "Allow a leading period to be matched by metacharacters.  By default, "
512 "metacharacters can't match a leading period."
513 msgstr ""
514 "先頭のピリオドがメタキャラクタにマッチできるようにする。 デフォルトでは、メタ"
515 "キャラクタは先頭のピリオドにはマッチできない。"
516
517 #. type: TP
518 #: build/C/man3/glob.3:148
519 #, no-wrap
520 msgid "B<GLOB_ALTDIRFUNC>"
521 msgstr "B<GLOB_ALTDIRFUNC>"
522
523 #. type: Plain text
524 #: build/C/man3/glob.3:158
525 msgid ""
526 "Use alternative functions I<pglob-E<gt>gl_closedir>, I<pglob-"
527 "E<gt>gl_readdir>, I<pglob-E<gt>gl_opendir>, I<pglob-E<gt>gl_lstat>, and "
528 "I<pglob-E<gt>gl_stat> for filesystem access instead of the normal library "
529 "functions."
530 msgstr ""
531 "ファイルシステムにアクセスする際に、通常のライブラリ関数の代わりに 代替関数 "
532 "I<pglob-E<gt>gl_closedir>, I<pglob-E<gt>gl_readdir>, I<pglob-"
533 "E<gt>gl_opendir>, I<pglob-E<gt>gl_lstat>, I<pglob-E<gt>gl_stat> が用いられ"
534 "る。"
535
536 #. type: TP
537 #: build/C/man3/glob.3:158
538 #, no-wrap
539 msgid "B<GLOB_BRACE>"
540 msgstr "B<GLOB_BRACE>"
541
542 #. type: Plain text
543 #: build/C/man3/glob.3:174
544 msgid ""
545 "Expand B<csh>(1)  style brace expressions of the form B<{a,b}>.  Brace "
546 "expressions can be nested.  Thus, for example, specifying the pattern \"{foo/"
547 "{,cat,dog},bar}\" would return the same results as four separate B<glob>()  "
548 "calls using the strings: \"foo/\", \"foo/cat\", \"foo/dog\", and \"bar\"."
549 msgstr ""
550 "B<{a,b}> という形式の B<csh>(1)  スタイルの括弧表現を展開する。 括弧表現は入"
551 "れ子にすることができる。 したがって、例えば、\"{foo/{,cat,dog},bar}\" という"
552 "パターンを 指定した場合に得られる結果は、 4つの文字列 \"foo/\", \"foo/cat\", "
553 "\"foo/dog\", \"bar\" のそれぞれについて B<glob>()  を呼び出した場合と同じにな"
554 "る。"
555
556 #. type: TP
557 #: build/C/man3/glob.3:174
558 #, no-wrap
559 msgid "B<GLOB_NOMAGIC>"
560 msgstr "B<GLOB_NOMAGIC>"
561
562 #. type: Plain text
563 #: build/C/man3/glob.3:179
564 #, fuzzy
565 #| msgid ""
566 #| "If the pattern contains no metacharacters then it should be returned as "
567 #| "the sole matching word, even if there is no file with that name."
568 msgid ""
569 "If the pattern contains no metacharacters, then it should be returned as the "
570 "sole matching word, even if there is no file with that name."
571 msgstr ""
572 "パターンにメタキャラクタが含まれていない場合、 マッチ結果として指定されたパ"
573 "ターンだけを返す。 パターンで指定された名前のファイルが存在しない場合であって"
574 "も、 そのパターンが返される。"
575
576 #. type: TP
577 #: build/C/man3/glob.3:179
578 #, no-wrap
579 msgid "B<GLOB_TILDE>"
580 msgstr "B<GLOB_TILDE>"
581
582 #. type: Plain text
583 #: build/C/man3/glob.3:191
584 msgid ""
585 "Carry out tilde expansion.  If a tilde (\\(aq~\\(aq) is the only character "
586 "in the pattern, or an initial tilde is followed immediately by a slash "
587 "(\\(aq/\\(aq), then the home directory of the caller is substituted for the "
588 "tilde.  If an initial tilde is followed by a username (e.g., \"~andrea/bin"
589 "\"), then the tilde and username are substituted by the home directory of "
590 "that user.  If the username is invalid, or the home directory cannot be "
591 "determined, then no substitution is performed."
592 msgstr ""
593 "チルダの展開を行う。 チルダ (\\(aq~\\(aq) がパターン内の唯一の文字の場合か、"
594 "先頭のチルダの直後の文字が スラッシュ (\\(aq/\\(aq) の場合、チルダを呼び出し"
595 "者のホームディレクトリで置換する。 先頭のチルダにユーザ名が続く場合 (例えば "
596 "\"~andrea/bin\")、 チルダとユーザ名をそのユーザのホームディレクトリで置換す"
597 "る。 ユーザ名が無効な場合やホームディレクトリが決定できない場合は、 置換は実"
598 "行されない。"
599
600 #. type: TP
601 #: build/C/man3/glob.3:191
602 #, no-wrap
603 msgid "B<GLOB_TILDE_CHECK>"
604 msgstr "B<GLOB_TILDE_CHECK>"
605
606 #. type: Plain text
607 #: build/C/man3/glob.3:202
608 msgid ""
609 "This provides behavior similar to that of B<GLOB_TILDE>.  The difference is "
610 "that if the username is invalid, or the home directory cannot be determined, "
611 "then instead of using the pattern itself as the name, B<glob>()  returns "
612 "B<GLOB_NOMATCH> to indicate an error."
613 msgstr ""
614 "このフラグを指定すると B<GLOB_TILDE> と同様の振舞いをする。 B<GLOB_TILDE> と"
615 "の違いは、ユーザ名が無効だった場合や ホームディレクトリが決定できなかった場合"
616 "に、 パターン自身を使用するのではなく、 B<glob>()  がエラーを示す "
617 "B<GLOB_NOMATCH> を返すことである。"
618
619 #. type: TP
620 #: build/C/man3/glob.3:202
621 #, no-wrap
622 msgid "B<GLOB_ONLYDIR>"
623 msgstr "B<GLOB_ONLYDIR>"
624
625 #. type: Plain text
626 #: build/C/man3/glob.3:215
627 msgid ""
628 "This is a I<hint> to B<glob>()  that the caller is interested only in "
629 "directories that match the pattern.  If the implementation can easily "
630 "determine file-type information, then nondirectory files are not returned to "
631 "the caller.  However, the caller must still check that returned files are "
632 "directories.  (The purpose of this flag is merely to optimize performance "
633 "when the caller is interested only in directories.)"
634 msgstr ""
635 "このフラグは、 B<glob>()  に対する「ヒント」であり、 呼び出し側がパターンに"
636 "マッチするディレクトリにしか興味がないことを知らせる。 実装においてファイルの"
637 "種別情報を簡単に決定できる場合は、ディレクトリでない ファイルは呼び出し側に返"
638 "されない。しかしながら、呼び出し側では、返された ファイルリストがディレクトリ"
639 "かどうかを確認しなければならない。 (このフラグが存在するのは、呼び出し側が"
640 "ディレクトリにしか興味がない際に 性能を最適化する目的のためだけである。)"
641
642 #. type: Plain text
643 #: build/C/man3/glob.3:238
644 msgid ""
645 "If I<errfunc> is not NULL, it will be called in case of an error with the "
646 "arguments I<epath>, a pointer to the path which failed, and I<eerrno>, the "
647 "value of I<errno> as returned from one of the calls to B<opendir>(3), "
648 "B<readdir>(3), or B<stat>(2).  If I<errfunc> returns nonzero, or if "
649 "B<GLOB_ERR> is set, B<glob>()  will terminate after the call to I<errfunc>."
650 msgstr ""
651 "I<errfunc> が NULL でなければ、 エラーが起こった場合には関数 I<errfunc> が呼"
652 "び出される。関数の引数には、失敗したパス名 I<epath> と I<errno> (B<opendir>"
653 "(3), B<readdir>(3), B<stat>(2).  のいずれかによってセットされた値) が与えられ"
654 "る。 I<errfunc> が 0 以外の値を返すかもしくは B<GLOB_ERR> がセットされた場合 "
655 "B<glob>()  は I<errfunc> の呼び出し後に終了する。"
656
657 #. type: Plain text
658 #: build/C/man3/glob.3:245
659 msgid ""
660 "Upon successful return, I<pglob-E<gt>gl_pathc> contains the number of "
661 "matched pathnames and I<pglob-E<gt>gl_pathv> contains a pointer to the list "
662 "of pointers to matched pathnames.  The list of pointers is terminated by a "
663 "null pointer."
664 msgstr ""
665 "呼び出しが成功して戻った場合 I<pglob-E<gt>gl_pathc> にはマッチしたパス名が含"
666 "まれ、 I<pglob-E<gt>gl_pathv> はマッチしたパス名へのポインタのリストへのポイ"
667 "ンタとなる。 ポインタのリストは NULL ポインタで終端される。"
668
669 #. type: Plain text
670 #: build/C/man3/glob.3:254
671 msgid ""
672 "It is possible to call B<glob>()  several times.  In that case, the "
673 "B<GLOB_APPEND> flag has to be set in I<flags> on the second and later "
674 "invocations."
675 msgstr ""
676 "B<glob>()  を何度か続けて呼び出すことができる。その際2回目以降の呼び出しでは "
677 "B<GLOB_APPEND> フラグが I<flags> に設定されていなければならない。"
678
679 #. type: Plain text
680 #: build/C/man3/glob.3:262
681 msgid ""
682 "As a GNU extension, I<pglob-E<gt>gl_flags> is set to the flags specified, "
683 "B<or>ed with B<GLOB_MAGCHAR> if any metacharacters were found."
684 msgstr ""
685 "GNU の拡張として、 I<pglob-E<gt>gl_flags> には指定したフラグがセットされる。"
686 "もし一つでもメタキャラクタが見付かれば このフラグと B<GLOB_MAGCHAR> との "
687 "B<OR> を取った結果がセットされる。"
688
689 #. type: Plain text
690 #: build/C/man3/glob.3:267
691 msgid ""
692 "On successful completion, B<glob>()  returns zero.  Other possible returns "
693 "are:"
694 msgstr ""
695 "呼び出しが成功して完了すると B<glob>()  は 0 を返す。 それ以外の返り値は以下"
696 "の通り:"
697
698 #. type: TP
699 #: build/C/man3/glob.3:267
700 #, no-wrap
701 msgid "B<GLOB_NOSPACE>"
702 msgstr "B<GLOB_NOSPACE>"
703
704 #. type: Plain text
705 #: build/C/man3/glob.3:270
706 msgid "for running out of memory,"
707 msgstr "メモリを使い果たした"
708
709 #. type: TP
710 #: build/C/man3/glob.3:270
711 #, no-wrap
712 msgid "B<GLOB_ABORTED>"
713 msgstr "B<GLOB_ABORTED>"
714
715 #. type: Plain text
716 #: build/C/man3/glob.3:273
717 msgid "for a read error, and"
718 msgstr "読み取りエラー"
719
720 #. type: TP
721 #: build/C/man3/glob.3:273
722 #, no-wrap
723 msgid "B<GLOB_NOMATCH>"
724 msgstr "B<GLOB_NOMATCH>"
725
726 #. type: Plain text
727 #: build/C/man3/glob.3:276
728 msgid "for no found matches."
729 msgstr "一つもマッチしなかった"
730
731 #. type: Plain text
732 #: build/C/man3/glob.3:278
733 msgid "POSIX.2, POSIX.1-2001."
734 msgstr "POSIX.2, POSIX.1-2001."
735
736 #. type: SH
737 #: build/C/man3/glob.3:278 build/C/man7/glob.7:142 build/C/man3/re_comp.3:75
738 #, no-wrap
739 msgid "NOTES"
740 msgstr "注意"
741
742 #. type: Plain text
743 #: build/C/man3/glob.3:289
744 msgid ""
745 "The structure elements I<gl_pathc> and I<gl_offs> are declared as I<size_t> "
746 "in glibc 2.1, as they should be according to POSIX.2, but are declared as "
747 "I<int> in libc4, libc5 and glibc 2.0."
748 msgstr ""
749 "glibc 2.1 では、 I<gl_pathc> と I<gl_offs> は POSIX.2 で指定されているように "
750 "I<size_t> として宣言されている。 libc4, libc5, glibc 2.0 では、 I<int> として"
751 "宣言されている。"
752
753 #. type: SH
754 #: build/C/man3/glob.3:289 build/C/man7/regex.7:260
755 #, no-wrap
756 msgid "BUGS"
757 msgstr "バグ"
758
759 #. type: Plain text
760 #: build/C/man3/glob.3:298
761 msgid ""
762 "The B<glob>()  function may fail due to failure of underlying function "
763 "calls, such as B<malloc>(3)  or B<opendir>(3).  These will store their error "
764 "code in I<errno>."
765 msgstr ""
766 "B<glob>()  関数はその中で呼び出している B<malloc>(3)  や B<opendir>(3)  など"
767 "の関数の呼び出しで失敗が起こると失敗する。 これにより I<errno> にそのエラー"
768 "コードが入る。"
769
770 #. type: SH
771 #: build/C/man3/glob.3:298 build/C/man3/wordexp.3:189
772 #, no-wrap
773 msgid "EXAMPLE"
774 msgstr "例"
775
776 #. type: Plain text
777 #: build/C/man3/glob.3:300
778 msgid "One example of use is the following code, which simulates typing"
779 msgstr "使用法の一例を以下に示す。以下はシェルで"
780
781 #. type: Plain text
782 #: build/C/man3/glob.3:303
783 msgid "ls -l *.c ../*.c"
784 msgstr "ls -l *.c ../*.c"
785
786 #. type: Plain text
787 #: build/C/man3/glob.3:306
788 msgid "in the shell:"
789 msgstr "をタイプした場合をシミュレートしている。"
790
791 #. type: Plain text
792 #: build/C/man3/glob.3:310
793 #, no-wrap
794 msgid "glob_t globbuf;\n"
795 msgstr "glob_t globbuf;\n"
796
797 #. type: Plain text
798 #: build/C/man3/glob.3:317
799 #, no-wrap
800 msgid ""
801 "globbuf.gl_offs = 2;\n"
802 "glob(\"*.c\", GLOB_DOOFFS, NULL, &globbuf);\n"
803 "glob(\"../*.c\", GLOB_DOOFFS | GLOB_APPEND, NULL, &globbuf);\n"
804 "globbuf.gl_pathv[0] = \"ls\";\n"
805 "globbuf.gl_pathv[1] = \"-l\";\n"
806 "execvp(\"ls\", &globbuf.gl_pathv[0]);\n"
807 msgstr ""
808 "globbuf.gl_offs = 2;\n"
809 "glob(\"*.c\", GLOB_DOOFFS, NULL, &globbuf);\n"
810 "glob(\"../*.c\", GLOB_DOOFFS | GLOB_APPEND, NULL, &globbuf);\n"
811 "globbuf.gl_pathv[0] = \"ls\";\n"
812 "globbuf.gl_pathv[1] = \"-l\";\n"
813 "execvp(\"ls\", &globbuf.gl_pathv[0]);\n"
814
815 #. type: Plain text
816 #: build/C/man3/glob.3:330
817 msgid ""
818 "B<ls>(1), B<sh>(1), B<stat>(2), B<exec>(3), B<fnmatch>(3), B<malloc>(3), "
819 "B<opendir>(3), B<readdir>(3), B<wordexp>(3), B<glob>(7)"
820 msgstr ""
821 "B<ls>(1), B<sh>(1), B<stat>(2), B<exec>(3), B<fnmatch>(3), B<malloc>(3), "
822 "B<opendir>(3), B<readdir>(3), B<wordexp>(3), B<glob>(7)"
823
824 #. type: TH
825 #: build/C/man7/glob.7:26
826 #, no-wrap
827 msgid "2012-07-28"
828 msgstr "2012-07-28"
829
830 #. type: TH
831 #: build/C/man7/glob.7:26
832 #, no-wrap
833 msgid "Linux"
834 msgstr "Linux"
835
836 #. type: Plain text
837 #: build/C/man7/glob.7:29
838 msgid "glob - globbing pathnames"
839 msgstr "glob - パス名を glob する"
840
841 #. type: Plain text
842 #: build/C/man7/glob.7:34
843 msgid ""
844 "Long ago, in UNIX V6, there was a program I</etc/glob> that would expand "
845 "wildcard patterns.  Soon afterward this became a shell built-in."
846 msgstr ""
847 "昔々 UNIX V6 では、ワイルドカードパターンを展開する I</etc/glob> と言うプログ"
848 "ラムがあった。その後すぐに、 この機能はシェルに組み込まれるようになった。"
849
850 #. type: Plain text
851 #: build/C/man7/glob.7:38
852 msgid ""
853 "These days there is also a library routine B<glob>(3)  that will perform "
854 "this function for a user program."
855 msgstr ""
856 "今日では、この機能をユーザープログラムからも実行できるよう、 B<glob>(3)  とい"
857 "うライブラリルーチンも存在している。"
858
859 #. type: Plain text
860 #: build/C/man7/glob.7:40
861 msgid "The rules are as follows (POSIX.2, 3.13)."
862 msgstr "glob の規則を以下に述べる (POSIX.2 3.13)。"
863
864 #. type: SS
865 #: build/C/man7/glob.7:40
866 #, no-wrap
867 msgid "Wildcard matching"
868 msgstr "ワイルドカードマッチ"
869
870 #. type: Plain text
871 #: build/C/man7/glob.7:47
872 msgid ""
873 "A string is a wildcard pattern if it contains one of the characters \\(aq?"
874 "\\(aq, \\(aq*\\(aq or \\(aq[\\(aq.  Globbing is the operation that expands a "
875 "wildcard pattern into the list of pathnames matching the pattern.  Matching "
876 "is defined by:"
877 msgstr ""
878 "文字列に \\(aq?\\(aq, \\(aq*\\(aq, \\(aq[\\(aq が含まれていると、 それはワイ"
879 "ルドカードパターンとみなされる。 「glob する」というのは、ワイルドカードパ"
880 "ターンを展開して、 そのパターンにマッチするパス名のリストを得ることである。 "
881 "マッチは以下のように定義される。"
882
883 #. type: Plain text
884 #: build/C/man7/glob.7:49
885 msgid "A \\(aq?\\(aq (not between brackets) matches any single character."
886 msgstr "(ブラケット外部の) \\(aq?\\(aq はあらゆる単一の文字にマッチする。"
887
888 #. type: Plain text
889 #: build/C/man7/glob.7:52
890 msgid ""
891 "A \\(aq*\\(aq (not between brackets) matches any string, including the empty "
892 "string."
893 msgstr ""
894 "(ブラケット外部の) \\(aq*\\(aq はあらゆる文字列にマッチする。 空文字列 "
895 "(empty string) にもマッチする。"
896
897 #. type: Plain text
898 #: build/C/man7/glob.7:54
899 msgid "B<Character classes>"
900 msgstr "B<文字クラス (character class)>"
901
902 #. type: Plain text
903 #: build/C/man7/glob.7:63
904 msgid ""
905 "An expression \"I<[...]>\" where the first character after the leading \\(aq"
906 "[\\(aq is not an \\(aq!\\(aq matches a single character, namely any of the "
907 "characters enclosed by the brackets.  The string enclosed by the brackets "
908 "cannot be empty; therefore \\(aq]\\(aq can be allowed between the brackets, "
909 "provided that it is the first character.  (Thus, \"I<[][!]>\" matches the "
910 "three characters \\(aq[\\(aq, \\(aq]\\(aq and \\(aq!\\(aq.)"
911 msgstr ""
912 "\"I<[...]>\" と言う表記は、先頭の \\(aq[\\(aq に続く最初の文字が \\(aq!\\(aq "
913 "で なければ、ブラケットの中に含まれている文字のどれか一つにマッチする。 ブラ"
914 "ケットの内部に含まれる文字列は空であってはならない。 したがって \\(aq]\\(aq "
915 "も最初の文字に指定すればブラケットの内部に含めることが できる (つまり \"I<[]"
916 "[!]>\" は \\(aq[\\(aq, \\(aq]\\(aq, \\(aq!\\(aq の 3 文字のどれかにマッチす"
917 "る)。"
918
919 #. type: Plain text
920 #: build/C/man7/glob.7:65
921 msgid "B<Ranges>"
922 msgstr "B<領域指定 (range)>"
923
924 #. type: Plain text
925 #: build/C/man7/glob.7:76
926 msgid ""
927 "There is one special convention: two characters separated by \\(aq-\\(aq "
928 "denote a range.  (Thus, \"I<[A-Fa-f0-9]>\" is equivalent to \"I<"
929 "[ABCDEFabcdef0123456789]>\".)  One may include \\(aq-\\(aq in its literal "
930 "meaning by making it the first or last character between the brackets.  "
931 "(Thus, \"I<[]-]>\" matches just the two characters \\(aq]\\(aq and \\(aq-"
932 "\\(aq, and \"I<[--0]>\" matches the three characters \\(aq-\\(aq, \\(aq."
933 "\\(aq, \\(aq0\\(aq, since \\(aq/\\(aq cannot be matched.)"
934 msgstr ""
935 "特殊な表記法が一つ存在する。\\(aq-\\(aq を挟む二つの文字は領域指定となる。 "
936 "(つまり \"I<[A-Fa-f0-9]>\" は \"I<[ABCDEFabcdef0123456789]>\" と等価とな"
937 "る。) \\(aq-\\(aq 文字そのものを入れたい場合は、 ブラケットの先頭または最後の"
938 "文字に指定すればよい。 (つまり \"I<[]-]>\" は二つの文字 \\(aq]\\(aq と \\(aq-"
939 "\\(aq にマッチし、\"I<[--0]>\" は \\(aq-\\(aq, \\(aq.\\(aq, \\(aq0\\(aq の 3 "
940 "文字にマッチする。この間の \\(aq/\\(aq にはマッチしない。後述を参照。)"
941
942 #. type: Plain text
943 #: build/C/man7/glob.7:78
944 msgid "B<Complementation>"
945 msgstr "B<補集合 (complementation)>"
946
947 #. type: Plain text
948 #: build/C/man7/glob.7:84
949 msgid ""
950 "An expression \"I<[!...]>\" matches a single character, namely any character "
951 "that is not matched by the expression obtained by removing the first \\(aq!"
952 "\\(aq from it.  (Thus, \"I<[!]a-]>\" matches any single character except "
953 "\\(aq]\\(aq, \\(aqa\\(aq and \\(aq-\\(aq.)"
954 msgstr ""
955 "\"I<[!...]>\" と言う表記は、ブラケットの内部に含まれない単一の文字にマッチす"
956 "る (ただし先頭にある \\(aq!\\(aq は除外)。 (つまり \"I<[!]a-]>\" は "
957 "\\(aq]\\(aq, \\(aqa\\(aq, \\(aq-\\(aq 以外のすべての文字の、どれか一つにマッ"
958 "チする。)"
959
960 #. type: Plain text
961 #: build/C/man7/glob.7:91
962 msgid ""
963 "One can remove the special meaning of \\(aq?\\(aq, \\(aq*\\(aq and \\(aq"
964 "[\\(aq by preceding them by a backslash, or, in case this is part of a shell "
965 "command line, enclosing them in quotes.  Between brackets these characters "
966 "stand for themselves.  Thus, \"I<[[?*\\e]>\" matches the four characters "
967 "\\(aq[\\(aq, \\(aq?\\(aq, \\(aq*\\(aq and \\(aq\\e\\(aq."
968 msgstr ""
969 "バックスラッシュ \\(aq\\e\\(aq を前置すれば、 \\(aq?\\(aq, \\(aq*\\(aq, \\(aq"
970 "[\\(aq は通常の文字として扱われる。 またはシェルのコマンドラインの一部に指定"
971 "する場合は、 クォートで囲っても同じ効果が得られる。ブラケットの内部では、 こ"
972 "れらの文字はその文字自身だけを意味する。 すなわち \"I<[[?*\\e]>\" は \\(aq"
973 "[\\(aq, \\(aq?\\(aq, \\(aq*\\(aq, \\(aq\\e\\(aq のどれか一文字にマッチする。"
974
975 #. type: SS
976 #: build/C/man7/glob.7:91
977 #, no-wrap
978 msgid "Pathnames"
979 msgstr "パス名 (pathname)"
980
981 #. type: Plain text
982 #: build/C/man7/glob.7:98
983 msgid ""
984 "Globbing is applied on each of the components of a pathname separately.  A "
985 "\\(aq/\\(aq in a pathname cannot be matched by a \\(aq?\\(aq or \\(aq*\\(aq "
986 "wildcard, or by a range like \"I<[.-0]>\".  A range cannot contain an "
987 "explicit \\(aq/\\(aq character; this would lead to a syntax error."
988 msgstr ""
989 "glob 動作は、パス名のそれぞれの部分に独立に適用される。 パス名に存在する "
990 "\\(aq/\\(aq は \\(aq?\\(aq や \\(aq*\\(aq ワイルドカードにはマッチしない。 ま"
991 "た \"I<[.-0]>\" のような領域指定にもマッチしない。 領域指定は陽に \\(aq/"
992 "\\(aq 文字を含むことはできない。これは文法エラーとなる。"
993
994 #. type: Plain text
995 #: build/C/man7/glob.7:103
996 msgid ""
997 "If a filename starts with a \\(aq.\\(aq, this character must be matched "
998 "explicitly.  (Thus, I<rm\\ *> will not remove .profile, and I<tar\\ c\\ *> "
999 "will not archive all your files; I<tar\\ c\\ .> is better.)"
1000 msgstr ""
1001 "\\(aq.\\(aq で始まるパス名では、この文字は陽にマッチさせなければならない。 "
1002 "(つまり I<rm\\ *> は .profile を削除しない。また I<tar\\ c\\ *> ではすべての"
1003 "ファイルはアーカイブされない。 I<tar\\ c\\ .> の方が良い。)"
1004
1005 #. type: SS
1006 #: build/C/man7/glob.7:103
1007 #, no-wrap
1008 msgid "Empty lists"
1009 msgstr "空のリスト"
1010
1011 #. type: Plain text
1012 #: build/C/man7/glob.7:109
1013 msgid ""
1014 "The nice and simple rule given above: \"expand a wildcard pattern into the "
1015 "list of matching pathnames\" was the original UNIX definition.  It allowed "
1016 "one to have patterns that expand into an empty list, as in"
1017 msgstr ""
1018 "先に与えた、わかりやすく簡単なルール、 「ワイルドカードパターンをマッチしたパ"
1019 "ス名のリストに展開する」と言うのは、 オリジナルの UNIX における定義であっ"
1020 "た。 これはパターンが空のリストに展開されることも許可されていた。 例えば"
1021
1022 #. type: Plain text
1023 #: build/C/man7/glob.7:112
1024 #, no-wrap
1025 msgid "    xv -wait 0 *.gif *.jpg\n"
1026 msgstr "    xv -wait 0 *.gif *.jpg\n"
1027
1028 #. type: Plain text
1029 #: build/C/man7/glob.7:122
1030 msgid ""
1031 "where perhaps no *.gif files are present (and this is not an error).  "
1032 "However, POSIX requires that a wildcard pattern is left unchanged when it is "
1033 "syntactically incorrect, or the list of matching pathnames is empty.  With "
1034 "I<bash> one can force the classical behavior using this command:"
1035 msgstr ""
1036 "において、*.gif ファイルが全くない場合でも、 これは空のリストに展開されるた"
1037 "め、エラーにならない。 しかし POSIX では、文法的に正しくないパターンや、 マッ"
1038 "チがなかったパターンは、 そのまま変更されずに残されることになっている。 "
1039 "I<bash> では、次のコマンドで昔からの振る舞いに設定することができる。"
1040
1041 #.  In Bash v1, by setting allow_null_glob_expansion=true
1042 #. type: Plain text
1043 #: build/C/man7/glob.7:125
1044 #, no-wrap
1045 msgid "    shopt -s nullglob\n"
1046 msgstr "    shopt -s nullglob\n"
1047
1048 #. type: Plain text
1049 #: build/C/man7/glob.7:128
1050 msgid "(Similar problems occur elsewhere.  E.g., where old scripts have"
1051 msgstr ""
1052 "(同様の問題は別のところでも起こっている。例えば、古いスクリプトにおける"
1053
1054 #. type: Plain text
1055 #: build/C/man7/glob.7:131
1056 #, no-wrap
1057 msgid "    rm \\`find . -name \"*~\"\\`\n"
1058 msgstr "    rm \\`find . -name \"*~\"\\`\n"
1059
1060 #. type: Plain text
1061 #: build/C/man7/glob.7:134
1062 msgid "new scripts require"
1063 msgstr "のような記述は、新しいスクリプトでは"
1064
1065 #. type: Plain text
1066 #: build/C/man7/glob.7:137
1067 #, no-wrap
1068 msgid "    rm -f nosuchfile \\`find . -name \"*~\"\\`\n"
1069 msgstr "    rm -f nosuchfile \\`find . -name \"*~\"\\`\n"
1070
1071 #. type: Plain text
1072 #: build/C/man7/glob.7:142
1073 msgid "to avoid error messages from I<rm> called with an empty argument list.)"
1074 msgstr ""
1075 "のようにしなければならない。さもないと I<rm> を引き数リストなしで呼び出す可能"
1076 "性があり、 エラーメッセージが出てしまう。)"
1077
1078 #. type: SS
1079 #: build/C/man7/glob.7:143
1080 #, no-wrap
1081 msgid "Regular expressions"
1082 msgstr "正規表現"
1083
1084 #. type: Plain text
1085 #: build/C/man7/glob.7:150
1086 msgid ""
1087 "Note that wildcard patterns are not regular expressions, although they are a "
1088 "bit similar.  First of all, they match filenames, rather than text, and "
1089 "secondly, the conventions are not the same: for example, in a regular "
1090 "expression \\(aq*\\(aq means zero or more copies of the preceding thing."
1091 msgstr ""
1092 "ワイルドカードパターンは正規表現と多少似ているが、しかしこの両者は異なる。 ま"
1093 "ず第一に、前者がファイル名にマッチするのに対して、 後者はテキストにマッチす"
1094 "る。第二に、ルールも同じではない。 例えば正規表現における \\(aq*\\(aq は、 前"
1095 "置された文字の 0 以上の繰り返しを表す。"
1096
1097 #. type: Plain text
1098 #: build/C/man7/glob.7:154
1099 msgid ""
1100 "Now that regular expressions have bracket expressions where the negation is "
1101 "indicated by a \\(aq^\\(aq, POSIX has declared the effect of a wildcard "
1102 "pattern \"I<[^...]>\" to be undefined."
1103 msgstr ""
1104 "正規表現にもブラケット表現はあるが、否定は \\(aq^\\(aq でなされる。 POSIX で"
1105 "はワイルドカードパターンにおける \"I<[^...]>\" を未定義であるとしている。"
1106
1107 #. type: SS
1108 #: build/C/man7/glob.7:154
1109 #, no-wrap
1110 msgid "Character classes and internationalization"
1111 msgstr "文字クラスと国際化"
1112
1113 #. type: Plain text
1114 #: build/C/man7/glob.7:172
1115 msgid ""
1116 "Of course ranges were originally meant to be ASCII ranges, so that \"I<[\\ -"
1117 "%]>\" stands for \"I<[\\ !\"#$%]>\" and \"I<[a-z]>\" stands for \"any "
1118 "lowercase letter\".  Some UNIX implementations generalized this so that a "
1119 "range X-Y stands for the set of characters with code between the codes for X "
1120 "and for Y.  However, this requires the user to know the character coding in "
1121 "use on the local system, and moreover, is not convenient if the collating "
1122 "sequence for the local alphabet differs from the ordering of the character "
1123 "codes.  Therefore, POSIX extended the bracket notation greatly, both for "
1124 "wildcard patterns and for regular expressions.  In the above we saw three "
1125 "types of items that can occur in a bracket expression: namely (i) the "
1126 "negation, (ii) explicit single characters, and (iii) ranges.  POSIX "
1127 "specifies ranges in an internationally more useful way and adds three more "
1128 "types:"
1129 msgstr ""
1130 "領域指定は、もともとはもちろん ASCII における順序並びを意味していた。 した"
1131 "がって \"I<[\\ -%]>\" は \"I<[\\ !\"#$%]>\" の意味であり、 \"I<[a-z]>\" は"
1132 "「すべての小文字」の意味であった。 UNIX の実装の中には、これを拡張したものが"
1133 "存在し、 そこでは X-Y という領域指定は、X のコードと Y のコードに挟まれたコー"
1134 "ドを持つ文字すべてを表すようになっていた。 しかし、これにはユーザーがローカル"
1135 "なシステムにおける 文字コードを知らなければならず、 さらにローカルなアルファ"
1136 "ベットに対する照合順序 (collating sequence) が文字コードの順序と異なっている"
1137 "場合には不便であった。 (訳注: collating sequence に関しては B<regex>(7)  を参"
1138 "照して下さい。)  したがって POSIX では、ワイルドカードパターンと正規表現の双"
1139 "方において、 ブラケット表記を大幅に拡張している。 これまで我々は、ブラケット"
1140 "表記には三つの要素が含まれうることを見てきた。 すなわち (i) 否定、(ii) 単一の"
1141 "文字、(iii) 領域指定、の三つである。 POSIX では、領域指定をより国際化に便利な"
1142 "ように定義しており、 また三つのタイプをブラケット表記の要素として追加してい"
1143 "る。"
1144
1145 #. type: Plain text
1146 #: build/C/man7/glob.7:178
1147 msgid ""
1148 "(iii) Ranges X-Y comprise all characters that fall between X and Y "
1149 "(inclusive) in the current collating sequence as defined by the "
1150 "B<LC_COLLATE> category in the current locale."
1151 msgstr ""
1152 "(iii) 領域指定 X-Y は X と Y に挟まれた (両端含む) すべての文字を意味する。 "
1153 "このとき、カレントロケール (current locale) の B<LC_COLLATE> カテゴリで定義さ"
1154 "れている照合順序が用いられる。"
1155
1156 #. type: Plain text
1157 #: build/C/man7/glob.7:180
1158 msgid "(iv) Named character classes, like"
1159 msgstr "(iv) 名前付き文字クラス: 以下のようなものである。"
1160
1161 #. type: Plain text
1162 #: build/C/man7/glob.7:185
1163 #, no-wrap
1164 msgid ""
1165 "[:alnum:]  [:alpha:]  [:blank:]  [:cntrl:]\n"
1166 "[:digit:]  [:graph:]  [:lower:]  [:print:]\n"
1167 "[:punct:]  [:space:]  [:upper:]  [:xdigit:]\n"
1168 msgstr ""
1169 "[:alnum:]  [:alpha:]  [:blank:]  [:cntrl:]\n"
1170 "[:digit:]  [:graph:]  [:lower:]  [:print:]\n"
1171 "[:punct:]  [:space:]  [:upper:]  [:xdigit:]\n"
1172
1173 #. type: Plain text
1174 #: build/C/man7/glob.7:194
1175 msgid ""
1176 "so that one can say \"I<[[:lower:]]>\" instead of \"I<[a-z]>\", and have "
1177 "things work in Denmark, too, where there are three letters past \\(aqz\\(aq "
1178 "in the alphabet.  These character classes are defined by the B<LC_CTYPE> "
1179 "category in the current locale."
1180 msgstr ""
1181 "これを用いれば \"I<[a-z]>\" の代わりに \"I<[[:lower:]]>\" のような指定ができ"
1182 "る。 またデンマークのように、アルファベットの \\(aqz\\(aq 以降に 3 つの文字が"
1183 "存在するような場合でも、同じような動作が期待できる。 これらの文字クラスはカレ"
1184 "ントロケールの B<LC_CTYPE> カテゴリで定義されている。"
1185
1186 #. type: Plain text
1187 #: build/C/man7/glob.7:200
1188 msgid ""
1189 "(v) Collating symbols, like \"I<[.ch.]>\" or \"I<[.a-acute.]>\", where the "
1190 "string between \"I<[.>\" and \"I<.]>\" is a collating element defined for "
1191 "the current locale.  Note that this may be a multicharacter element."
1192 msgstr ""
1193 "(v) 照合順序におけるシンボル: \"I<[.ch.]>\" や \"I<[.a-acute.]>\" のように "
1194 "\"I<[.>\" と \"I<.]>\" で挟まれた文字列は、カレントロケールで定義された照合順"
1195 "序の要素となる。 ある一つの要素が複数の文字からなる場合もありうることに注意。"
1196
1197 #. type: Plain text
1198 #: build/C/man7/glob.7:208
1199 msgid ""
1200 "(vi) Equivalence class expressions, like \"I<[=a=]>\", where the string "
1201 "between \"I<[=>\" and \"I<=]>\" is any collating element from its "
1202 "equivalence class, as defined for the current locale.  For example, \"I<"
1203 "[[=a=]]>\" might be equivalent to \"I<[a\\('a\\(`a\\(:a\\(^a]>\", that is, "
1204 "to \"I<[a[.a-acute.][.a-grave.][.a-umlaut.][.a-circumflex.]]>\"."
1205 msgstr ""
1206 "(vi) 等価クラス表現 (equivalence class expressions):\n"
1207 "\"I<[=a=]>\" のように \"I<[=>\" と \"I<=]>\" とで挟まれた文字列であり、\n"
1208 "カレントロケールで定義された等価クラスのメンバーである照合要素のいずれかを表"
1209 "す。\n"
1210 "例えば、\"I<[[=a=]]>\" は \"I<[a\\('a\\(`a\\(:a\\(^a]>\"、つまり\n"
1211 "\"I<[a[.a-acute.][.a-grave.][.a-umlaut.][.a-circumflex.]]>\" と等価になる。"
1212
1213 #. type: Plain text
1214 #: build/C/man7/glob.7:214
1215 msgid "B<sh>(1), B<fnmatch>(3), B<glob>(3), B<locale>(7), B<regex>(7)"
1216 msgstr "B<sh>(1), B<fnmatch>(3), B<glob>(3), B<locale>(7), B<regex>(7)"
1217
1218 #. type: TH
1219 #: build/C/man3/re_comp.3:27
1220 #, no-wrap
1221 msgid "RE_COMP"
1222 msgstr "RE_COMP"
1223
1224 #. type: TH
1225 #: build/C/man3/re_comp.3:27
1226 #, no-wrap
1227 msgid "2013-06-21"
1228 msgstr "2013-06-21"
1229
1230 #. type: Plain text
1231 #: build/C/man3/re_comp.3:30
1232 msgid "re_comp, re_exec - BSD regex functions"
1233 msgstr "re_comp, re_exec - BSD の正規表現関数"
1234
1235 #. type: Plain text
1236 #: build/C/man3/re_comp.3:32
1237 msgid "B<#define _REGEX_RE_COMP>"
1238 msgstr "B<#define _REGEX_RE_COMP>"
1239
1240 #. type: Plain text
1241 #: build/C/man3/re_comp.3:34
1242 msgid "B<#include E<lt>sys/types.hE<gt>>"
1243 msgstr "B<#include E<lt>sys/types.hE<gt>>"
1244
1245 #. type: Plain text
1246 #: build/C/man3/re_comp.3:36
1247 msgid "B<#include E<lt>regex.hE<gt>>"
1248 msgstr "B<#include E<lt>regex.hE<gt>>"
1249
1250 #. type: Plain text
1251 #: build/C/man3/re_comp.3:38
1252 msgid "B<char *re_comp(char *>I<regex>B<);>"
1253 msgstr "B<char *re_comp(char *>I<regex>B<);>"
1254
1255 #. type: Plain text
1256 #: build/C/man3/re_comp.3:40
1257 msgid "B<int re_exec(char *>I<string>B<);>"
1258 msgstr "B<int re_exec(char *>I<string>B<);>"
1259
1260 #. type: Plain text
1261 #: build/C/man3/re_comp.3:52
1262 msgid ""
1263 "B<re_comp>()  is used to compile the null-terminated regular expression "
1264 "pointed to by I<regex>.  The compiled pattern occupies a static area, the "
1265 "pattern buffer, which is overwritten by subsequent use of B<re_comp>().  If "
1266 "I<regex> is NULL, no operation is performed and the pattern buffer's "
1267 "contents are not altered."
1268 msgstr ""
1269 "B<re_comp>()  は、 I<regex> で示される NULL で終端された正規表現をコンパイル"
1270 "するために使用される。 コンパイルされたパターンは静的な領域を使用しており、そ"
1271 "のパターンバッファ は以降の B<re_comp>()  の使用によって上書きされる。 もし "
1272 "I<regex> が NULL ならば何の操作も行われず、パターンバッファの内容は 置き換え"
1273 "られない。"
1274
1275 #. type: Plain text
1276 #: build/C/man3/re_comp.3:58
1277 msgid ""
1278 "B<re_exec>()  is used to assess whether the null-terminated string pointed "
1279 "to by I<string> matches the previously compiled I<regex>."
1280 msgstr ""
1281 "B<re_exec>()  は、 I<string> が指す NULL で終端された文字列が前回コンパイルさ"
1282 "れた I<regex> にマッチするかどうかを評価するために使用される。"
1283
1284 #. type: Plain text
1285 #: build/C/man3/re_comp.3:63
1286 msgid ""
1287 "B<re_comp>()  returns NULL on successful compilation of I<regex> otherwise "
1288 "it returns a pointer to an appropriate error message."
1289 msgstr ""
1290 "B<re_comp>()  は、 I<regex> のコンパイルに成功した場合 NULL を返し、 それ以外"
1291 "の場合は適切なエラーメッセージへのポインタを返す。"
1292
1293 #. type: Plain text
1294 #: build/C/man3/re_comp.3:66
1295 msgid "B<re_exec>()  returns 1 for a successful match, zero for failure."
1296 msgstr "B<re_exec>()  は、一致した場合 1 を、失敗した場合 0 を返す。"
1297
1298 #. type: SH
1299 #: build/C/man3/re_comp.3:66
1300 #, no-wrap
1301 msgid "ATTRIBUTES"
1302 msgstr "属性"
1303
1304 #. type: SS
1305 #: build/C/man3/re_comp.3:67
1306 #, no-wrap
1307 msgid "Multithreading (see pthreads(7))"
1308 msgstr "マルチスレッディング (pthreads(7) 参照)"
1309
1310 #. type: Plain text
1311 #: build/C/man3/re_comp.3:73
1312 msgid "The B<re_comp>()  and B<re_exec>()  functions are not thread-safe."
1313 msgstr "関数 B<re_comp>() と B<re_exec>() はスレッドセーフではない。"
1314
1315 #. type: Plain text
1316 #: build/C/man3/re_comp.3:75
1317 msgid "4.3BSD."
1318 msgstr "4.3BSD."
1319
1320 #. type: Plain text
1321 #: build/C/man3/re_comp.3:79
1322 msgid ""
1323 "These functions are obsolete; the functions documented in B<regcomp>(3)  "
1324 "should be used instead."
1325 msgstr ""
1326 "これらの関数は廃止予定である。代わりに B<regcomp>(3)  に書かれている関数を使"
1327 "用すべきである。"
1328
1329 #. type: Plain text
1330 #: build/C/man3/re_comp.3:83
1331 msgid "B<regcomp>(3), B<regex>(7), GNU regex manual"
1332 msgstr "B<regcomp>(3), B<regex>(7), GNU regex manual"
1333
1334 #. type: TH
1335 #: build/C/man3/regex.3:30 build/C/man7/regex.7:37
1336 #, no-wrap
1337 msgid "REGEX"
1338 msgstr "REGEX"
1339
1340 #. type: TH
1341 #: build/C/man3/regex.3:30
1342 #, no-wrap
1343 msgid "2013-02-11"
1344 msgstr "2013-02-11"
1345
1346 #. type: Plain text
1347 #: build/C/man3/regex.3:33
1348 msgid "regcomp, regexec, regerror, regfree - POSIX regex functions"
1349 msgstr "regcomp, regexec, regerror, regfree - POSIX regex 関数"
1350
1351 #. type: Plain text
1352 #: build/C/man3/regex.3:37
1353 #, no-wrap
1354 msgid ""
1355 "B<#include E<lt>sys/types.hE<gt>>\n"
1356 "B<#include E<lt>regex.hE<gt>>\n"
1357 msgstr ""
1358 "B<#include E<lt>sys/types.hE<gt>>\n"
1359 "B<#include E<lt>regex.hE<gt>>\n"
1360
1361 #. type: Plain text
1362 #: build/C/man3/regex.3:39
1363 #, no-wrap
1364 msgid "B<int regcomp(regex_t *>I<preg>B<, const char *>I<regex>B<, int >I<cflags>B<);>\n"
1365 msgstr "B<int regcomp(regex_t *>I<preg>B<, const char *>I<regex>B<, int >I<cflags>B<);>\n"
1366
1367 #. type: Plain text
1368 #: build/C/man3/regex.3:43
1369 #, no-wrap
1370 msgid ""
1371 "B<int regexec(const regex_t *>I<preg>B<, const char *>I<string>B<, size_t >I<nmatch>B<,>\n"
1372 "B<            regmatch_t >I<pmatch[]>B<, int >I<eflags>B<);>\n"
1373 msgstr ""
1374 "B<int regexec(const regex_t *>I<preg>B<, const char *>I<string>B<, size_t >I<nmatch>B<,>\n"
1375 "B<            regmatch_t >I<pmatch[]>B<, int >I<eflags>B<);>\n"
1376
1377 #. type: Plain text
1378 #: build/C/man3/regex.3:46
1379 #, no-wrap
1380 msgid ""
1381 "B<size_t regerror(int >I<errcode>B<, const regex_t *>I<preg>B<, char *>I<errbuf>B<,>\n"
1382 "B<                size_t >I<errbuf_size>B<);>\n"
1383 msgstr ""
1384 "B<size_t regerror(int >I<errcode>B<, const regex_t *>I<preg>B<, char *>I<errbuf>B<,>\n"
1385 "B<                size_t >I<errbuf_size>B<);>\n"
1386
1387 #. type: Plain text
1388 #: build/C/man3/regex.3:48
1389 #, no-wrap
1390 msgid "B<void regfree(regex_t *>I<preg>B<);>\n"
1391 msgstr "B<void regfree(regex_t *>I<preg>B<);>\n"
1392
1393 #. type: SS
1394 #: build/C/man3/regex.3:50
1395 #, no-wrap
1396 msgid "POSIX regex compiling"
1397 msgstr "POSIX regex コンパイル"
1398
1399 #. type: Plain text
1400 #: build/C/man3/regex.3:56
1401 msgid ""
1402 "B<regcomp>()  is used to compile a regular expression into a form that is "
1403 "suitable for subsequent B<regexec>()  searches."
1404 msgstr ""
1405 "B<regcomp>()  は、正規表現をコンパイルして、 B<regexec>()  での検索処理に適合"
1406 "する形態にする。"
1407
1408 #. type: Plain text
1409 #: build/C/man3/regex.3:65
1410 msgid ""
1411 "B<regcomp>()  is supplied with I<preg>, a pointer to a pattern buffer "
1412 "storage area; I<regex>, a pointer to the null-terminated string and "
1413 "I<cflags>, flags used to determine the type of compilation."
1414 msgstr ""
1415 "B<regcomp>()  はパターンを記憶するバッファへのポインタ I<preg>、 ヌル文字で終"
1416 "端された文字列 I<regex>、 そしてコンパイルの形式を決めるためのフラグ "
1417 "I<cflag> を引数に伴う。"
1418
1419 #. type: Plain text
1420 #: build/C/man3/regex.3:72
1421 msgid ""
1422 "All regular expression searching must be done via a compiled pattern buffer, "
1423 "thus B<regexec>()  must always be supplied with the address of a B<regcomp>"
1424 "()  initialized pattern buffer."
1425 msgstr ""
1426 "全ての正規表現検索は、コンパイルされたパターンによって行わなければならない。 "
1427 "よって、 B<regexec>()  に指定するのは、必ず (B<regcomp>()  によってコンパイル"
1428 "された) パターンバッファへのアドレスでなければならない。"
1429
1430 #. type: Plain text
1431 #: build/C/man3/regex.3:77
1432 msgid "I<cflags> may be the bitwise-B<or> of one or more of the following:"
1433 msgstr ""
1434 "I<cflags> には以下に示す定数一つ以上のビットごとの OR (bitwise-or) を指定す"
1435 "る。"
1436
1437 #. type: TP
1438 #: build/C/man3/regex.3:77
1439 #, no-wrap
1440 msgid "B<REG_EXTENDED>"
1441 msgstr "B<REG_EXTENDED>"
1442
1443 #. type: Plain text
1444 #: build/C/man3/regex.3:86
1445 msgid ""
1446 "Use B<POSIX> Extended Regular Expression syntax when interpreting I<regex>.  "
1447 "If not set, B<POSIX> Basic Regular Expression syntax is used."
1448 msgstr ""
1449 "I<regex> に B<POSIX> 拡張正規表現を使用する。もしこのフラグが設定されない場"
1450 "合、 B<POSIX> 標準正規表現が使われる。"
1451
1452 #. type: TP
1453 #: build/C/man3/regex.3:86
1454 #, no-wrap
1455 msgid "B<REG_ICASE>"
1456 msgstr "B<REG_ICASE>"
1457
1458 #. type: Plain text
1459 #: build/C/man3/regex.3:92
1460 msgid ""
1461 "Do not differentiate case.  Subsequent B<regexec>()  searches using this "
1462 "pattern buffer will be case insensitive."
1463 msgstr ""
1464 "大文字小文字の違いを無視する。このフラグを指定してコンパイルされた パターン"
1465 "バッファを用いて B<regexec>()  関数を呼び出すと、大文字小文字の区別を付けずに"
1466 "検索が行われる。"
1467
1468 #. type: TP
1469 #: build/C/man3/regex.3:92
1470 #, no-wrap
1471 msgid "B<REG_NOSUB>"
1472 msgstr "B<REG_NOSUB>"
1473
1474 #. type: Plain text
1475 #: build/C/man3/regex.3:102
1476 msgid ""
1477 "Do not report position of matches.  The I<nmatch> and I<pmatch> arguments to "
1478 "B<regexec>()  are ignored if the pattern buffer supplied was compiled with "
1479 "this flag set."
1480 msgstr ""
1481 "マッチの場所を報告しない。渡されたパターンバッファがこのフラグを設定してコン"
1482 "パイルされていた場合、 B<regexec>() の引き数 I<nmatch>, I<pmatch> が無視され"
1483 "る。"
1484
1485 #. type: TP
1486 #: build/C/man3/regex.3:102
1487 #, no-wrap
1488 msgid "B<REG_NEWLINE>"
1489 msgstr "B<REG_NEWLINE>"
1490
1491 #. type: Plain text
1492 #: build/C/man3/regex.3:105
1493 msgid "Match-any-character operators don't match a newline."
1494 msgstr "全ての文字にマッチするオペレータに改行をマッチさせない。"
1495
1496 #. type: Plain text
1497 #: build/C/man3/regex.3:109
1498 msgid ""
1499 "A nonmatching list (B<[^...]>)  not containing a newline does not match a "
1500 "newline."
1501 msgstr ""
1502 "改行を含まない非マッチング文字リスト (B<[^...]>)  に改行をマッチさせない。"
1503
1504 #. type: Plain text
1505 #: build/C/man3/regex.3:119
1506 msgid ""
1507 "Match-beginning-of-line operator (B<^>)  matches the empty string "
1508 "immediately after a newline, regardless of whether I<eflags>, the execution "
1509 "flags of B<regexec>(), contains B<REG_NOTBOL>."
1510 msgstr ""
1511 "B<regexec>()  の実行時に指定するフラグ I<eflags> に B<REG_NOTBOL> を含むかど"
1512 "うかにかかわらず、行頭にマッチするオペレータ (B<^>)  を改行直後の空文字列に"
1513 "マッチさせる。"
1514
1515 #. type: Plain text
1516 #: build/C/man3/regex.3:127
1517 msgid ""
1518 "Match-end-of-line operator (B<$>)  matches the empty string immediately "
1519 "before a newline, regardless of whether I<eflags> contains B<REG_NOTEOL>."
1520 msgstr ""
1521 "I<eflags> に B<REG_NOTEOL> を含むかどうかにかかわらず、行末にマッチするオペ"
1522 "レータ (B<$>)  を改行直前の空文字列にマッチさせる。"
1523
1524 #. type: SS
1525 #: build/C/man3/regex.3:127
1526 #, no-wrap
1527 msgid "POSIX regex matching"
1528 msgstr "POSIX regex マッチング"
1529
1530 #. type: Plain text
1531 #: build/C/man3/regex.3:144
1532 msgid ""
1533 "B<regexec>()  is used to match a null-terminated string against the "
1534 "precompiled pattern buffer, I<preg>.  I<nmatch> and I<pmatch> are used to "
1535 "provide information regarding the location of any matches.  I<eflags> may be "
1536 "the bitwise-B<or> of one or both of B<REG_NOTBOL> and B<REG_NOTEOL> which "
1537 "cause changes in matching behavior described below."
1538 msgstr ""
1539 "B<regexec>()  は、 プリコンパイルされたパターンバッファ I<preg> をヌル文字で"
1540 "終端された文字列にマッチさせる。 I<nmatch> と I<pmatch> はマッチングの位置に"
1541 "関する情報を取得するのに用いられる。 I<eflags> には B<REG_NOTBOL> と "
1542 "B<REG_NOTEOL> のどちらか、もしくは両方のビットごとの B<OR> (bitwise-B<or>)  "
1543 "を指定し、以下で説明するようにマッチング動作を変化させる。"
1544
1545 #. type: TP
1546 #: build/C/man3/regex.3:144
1547 #, no-wrap
1548 msgid "B<REG_NOTBOL>"
1549 msgstr "B<REG_NOTBOL>"
1550
1551 #. type: Plain text
1552 #: build/C/man3/regex.3:154
1553 msgid ""
1554 "The match-beginning-of-line operator always fails to match (but see the "
1555 "compilation flag B<REG_NEWLINE> above).  This flag may be used when "
1556 "different portions of a string are passed to B<regexec>()  and the beginning "
1557 "of the string should not be interpreted as the beginning of the line."
1558 msgstr ""
1559 "行頭にマッチするオペレータは、必ずマッチに失敗する (コンパイル時のフラグ "
1560 "B<REG_NEWLINE> の項目も参照)。 このフラグは、複数行にまたがる文字列を "
1561 "B<regexec>()  で検索する際に、文字列の先頭を行の先頭として解釈させない場合に"
1562 "用いる。"
1563
1564 #. type: TP
1565 #: build/C/man3/regex.3:154
1566 #, no-wrap
1567 msgid "B<REG_NOTEOL>"
1568 msgstr "B<REG_NOTEOL>"
1569
1570 #. type: Plain text
1571 #: build/C/man3/regex.3:160
1572 msgid ""
1573 "The match-end-of-line operator always fails to match (but see the "
1574 "compilation flag B<REG_NEWLINE> above)."
1575 msgstr ""
1576 "行末にマッチするオペレータは、必ずマッチに失敗する (コンパイル時のフラグ "
1577 "B<REG_NEWLINE> の項目も参照)。"
1578
1579 #. type: SS
1580 #: build/C/man3/regex.3:160
1581 #, no-wrap
1582 msgid "Byte offsets"
1583 msgstr "バイトオフセット"
1584
1585 #. type: Plain text
1586 #: build/C/man3/regex.3:185
1587 msgid ""
1588 "Unless B<REG_NOSUB> was set for the compilation of the pattern buffer, it is "
1589 "possible to obtain match addressing information.  I<pmatch> must be "
1590 "dimensioned to have at least I<nmatch> elements.  These are filled in by "
1591 "B<regexec>()  with substring match addresses.  The offsets of the "
1592 "subexpression starting at the I<i>th open parenthesis are stored in I<pmatch"
1593 "[i]>.  The entire regular expression's match addresses are stored in I<pmatch"
1594 "[0]>.  (Note that to return the offsets of I<N> subexpression matches, "
1595 "I<nmatch> must be at least I<N+1>.)  Any unused structure elements will "
1596 "contain the value -1."
1597 msgstr ""
1598 "パターンバッファのコンパイル時に B<REG_NOSUB> が設定されない場合は、マッチン"
1599 "グ位置情報を得ることができる。 I<pmatch> は、少なくとも I<nmatch> の大きさを"
1600 "持つように指定しなければならない。 B<regexec>()  の実行によって、それらに部分"
1601 "文字列マッチング位置情報が代入される。 I<i> 番目の括弧で始まる部分正規表現の"
1602 "オフセットは I<pmatch[i]> に格納される。正規表現全体のマッチアドレスは "
1603 "I<pmatch[0]> に格納される。 (I<N> 個の部分正規表現のマッチのオフセットを返す"
1604 "ためには、 I<nmatch> は最低限 I<N+1> でなければならない点に注意すること。) 未"
1605 "使用の構造体要素には -1 が値として代入される。"
1606
1607 #. type: Plain text
1608 #: build/C/man3/regex.3:192
1609 msgid ""
1610 "The I<regmatch_t> structure which is the type of I<pmatch> is defined in "
1611 "I<E<lt>regex.hE<gt>>."
1612 msgstr ""
1613 "I<pmatch> の型である I<regmatch_t> 構造体は、 I<E<lt>regex.hE<gt>> 内で定義さ"
1614 "れる。"
1615
1616 #. type: Plain text
1617 #: build/C/man3/regex.3:199
1618 #, no-wrap
1619 msgid ""
1620 "typedef struct {\n"
1621 "    regoff_t rm_so;\n"
1622 "    regoff_t rm_eo;\n"
1623 "} regmatch_t;\n"
1624 msgstr ""
1625 "typedef struct {\n"
1626 "    regoff_t rm_so;\n"
1627 "    regoff_t rm_eo;\n"
1628 "} regmatch_t;\n"
1629
1630 #. type: Plain text
1631 #: build/C/man3/regex.3:210
1632 msgid ""
1633 "Each I<rm_so> element that is not -1 indicates the start offset of the next "
1634 "largest substring match within the string.  The relative I<rm_eo> element "
1635 "indicates the end offset of the match, which is the offset of the first "
1636 "character after the matching text."
1637 msgstr ""
1638 "構造体要素 I<rm_so> の値が -1 でない場合、それは文字列内での次の最大のマッチ"
1639 "ング部分の開始 オフセット位置を示す。それに対し、構造体要素 I<rm_eo> はマッチ"
1640 "ング部分の終了オフセット位置を示し、 マッチング部分の直後の文字のオフセット位"
1641 "置が使用される。"
1642
1643 #. type: SS
1644 #: build/C/man3/regex.3:210
1645 #, no-wrap
1646 msgid "POSIX error reporting"
1647 msgstr "POSIX エラーレポート"
1648
1649 #. type: Plain text
1650 #: build/C/man3/regex.3:217
1651 msgid ""
1652 "B<regerror>()  is used to turn the error codes that can be returned by both "
1653 "B<regcomp>()  and B<regexec>()  into error message strings."
1654 msgstr ""
1655 "B<regerror>()  は、 B<regcomp>()  と B<regexec>()  の実行によって得られるエ"
1656 "ラーコードから、エラーメッセージ文字列を 得るのに用いられる。"
1657
1658 #. type: Plain text
1659 #: build/C/man3/regex.3:239
1660 msgid ""
1661 "B<regerror>()  is passed the error code, I<errcode>, the pattern buffer, "
1662 "I<preg>, a pointer to a character string buffer, I<errbuf>, and the size of "
1663 "the string buffer, I<errbuf_size>.  It returns the size of the I<errbuf> "
1664 "required to contain the null-terminated error message string.  If both "
1665 "I<errbuf> and I<errbuf_size> are nonzero, I<errbuf> is filled in with the "
1666 "first I<errbuf_size - 1> characters of the error message and a terminating "
1667 "null byte (\\(aq\\e0\\(aq)."
1668 msgstr ""
1669 "B<regerror>()  はエラーコード I<errcode>、 パターンバッファ I<preg>、 文字列"
1670 "バッファへのポインタ I<errbuf>、 文字列バッファのサイズ I<errbuf_size> を引数"
1671 "にとる。 この関数は、ヌル文字で終端されたエラーメッセージ文字列を格納するのに"
1672 "必要な I<errbuf> のサイズを返す。もし I<errbuf> と I<errbuf_size> の両方が非 "
1673 "0 値であれば、 I<errbuf> には最初の I<errbuf_size - 1> 文字分にエラーメッセー"
1674 "ジと終端の NULL バイト (\\(aq\\e0\\(aq)  が収まるように代入される。"
1675
1676 #. type: SS
1677 #: build/C/man3/regex.3:239
1678 #, no-wrap
1679 msgid "POSIX pattern buffer freeing"
1680 msgstr "POSIX パターンバッファ解放"
1681
1682 #. type: Plain text
1683 #: build/C/man3/regex.3:247
1684 msgid ""
1685 "Supplying B<regfree>()  with a precompiled pattern buffer, I<preg> will free "
1686 "the memory allocated to the pattern buffer by the compiling process, "
1687 "B<regcomp>()."
1688 msgstr ""
1689 "引数にコンパイルされたパターンバッファ I<preg> を与えて B<regfree>()  を呼び"
1690 "出すと、 B<regcomp>()  によるコンパイル時にパターンバッファに割り当てられたメ"
1691 "モリが解放される。"
1692
1693 #. type: Plain text
1694 #: build/C/man3/regex.3:250
1695 msgid ""
1696 "B<regcomp>()  returns zero for a successful compilation or an error code for "
1697 "failure."
1698 msgstr ""
1699 "B<regcomp>()  は、コンパイルの成功時には 0 を返し、失敗時にはエラーコードを返"
1700 "す。"
1701
1702 #. type: Plain text
1703 #: build/C/man3/regex.3:255
1704 msgid ""
1705 "B<regexec>()  returns zero for a successful match or B<REG_NOMATCH> for "
1706 "failure."
1707 msgstr ""
1708 "B<regexec>()  は、マッチングの成功時には 0 を返し、失敗時には B<REG_NOMATCH> "
1709 "を返す。"
1710
1711 #. type: SH
1712 #: build/C/man3/regex.3:255
1713 #, no-wrap
1714 msgid "ERRORS"
1715 msgstr "エラー"
1716
1717 #. type: Plain text
1718 #: build/C/man3/regex.3:258
1719 msgid "The following errors can be returned by B<regcomp>():"
1720 msgstr "B<regcomp>()  は以下のエラーを返す。"
1721
1722 #. type: TP
1723 #: build/C/man3/regex.3:258
1724 #, no-wrap
1725 msgid "B<REG_BADBR>"
1726 msgstr "B<REG_BADBR>"
1727
1728 #. type: Plain text
1729 #: build/C/man3/regex.3:261
1730 msgid "Invalid use of back reference operator."
1731 msgstr "無効な後方参照オペレータの使用。"
1732
1733 #. type: TP
1734 #: build/C/man3/regex.3:261
1735 #, no-wrap
1736 msgid "B<REG_BADPAT>"
1737 msgstr "B<REG_BADPAT>"
1738
1739 #. type: Plain text
1740 #: build/C/man3/regex.3:264
1741 msgid "Invalid use of pattern operators such as group or list."
1742 msgstr "グループやリストなどの、パターンオペレータの無効な使用。"
1743
1744 #. type: TP
1745 #: build/C/man3/regex.3:264
1746 #, no-wrap
1747 msgid "B<REG_BADRPT>"
1748 msgstr "B<REG_BADRPT>"
1749
1750 #. type: Plain text
1751 #: build/C/man3/regex.3:268
1752 msgid ""
1753 "Invalid use of repetition operators such as using \\(aq*\\(aq as the first "
1754 "character."
1755 msgstr ""
1756 "\\(aq*\\(aq が最初の文字としてくるような、無効な繰り返しオペレータの使用。"
1757
1758 #. type: TP
1759 #: build/C/man3/regex.3:268
1760 #, no-wrap
1761 msgid "B<REG_EBRACE>"
1762 msgstr "B<REG_EBRACE>"
1763
1764 #. type: Plain text
1765 #: build/C/man3/regex.3:271
1766 msgid "Un-matched brace interval operators."
1767 msgstr ""
1768 "インターバルオペレータ B<{}> (brace interval operators) が閉じていない。"
1769
1770 #. type: TP
1771 #: build/C/man3/regex.3:271
1772 #, no-wrap
1773 msgid "B<REG_EBRACK>"
1774 msgstr "B<REG_EBRACK>"
1775
1776 #. type: Plain text
1777 #: build/C/man3/regex.3:274
1778 msgid "Un-matched bracket list operators."
1779 msgstr "リストオペレータ B<[]> (bracket list operators) が閉じていない。"
1780
1781 #. type: TP
1782 #: build/C/man3/regex.3:274
1783 #, no-wrap
1784 msgid "B<REG_ECOLLATE>"
1785 msgstr "B<REG_ECOLLATE>"
1786
1787 #. type: Plain text
1788 #: build/C/man3/regex.3:277
1789 msgid "Invalid collating element."
1790 msgstr ""
1791 "照合順序の要素 (collating element) として有効ではない。 (訳注) 詳細は "
1792 "B<regex>(7)  を参照。"
1793
1794 #. type: TP
1795 #: build/C/man3/regex.3:277
1796 #, no-wrap
1797 msgid "B<REG_ECTYPE>"
1798 msgstr "B<REG_ECTYPE>"
1799
1800 #. type: Plain text
1801 #: build/C/man3/regex.3:280
1802 msgid "Unknown character class name."
1803 msgstr "未知のキャラクタクラス名。"
1804
1805 #. type: TP
1806 #: build/C/man3/regex.3:280
1807 #, no-wrap
1808 msgid "B<REG_EEND>"
1809 msgstr "B<REG_EEND>"
1810
1811 #. type: Plain text
1812 #: build/C/man3/regex.3:284
1813 msgid "Nonspecific error.  This is not defined by POSIX.2."
1814 msgstr "未定義エラー。これは POSIX.2 には定義されていない。"
1815
1816 #. type: TP
1817 #: build/C/man3/regex.3:284
1818 #, no-wrap
1819 msgid "B<REG_EESCAPE>"
1820 msgstr "B<REG_EESCAPE>"
1821
1822 #. type: Plain text
1823 #: build/C/man3/regex.3:287
1824 msgid "Trailing backslash."
1825 msgstr "正規表現がバックスラッシュで終っている。"
1826
1827 #. type: TP
1828 #: build/C/man3/regex.3:287
1829 #, no-wrap
1830 msgid "B<REG_EPAREN>"
1831 msgstr "B<REG_EPAREN>"
1832
1833 #. type: Plain text
1834 #: build/C/man3/regex.3:290
1835 msgid "Un-matched parenthesis group operators."
1836 msgstr ""
1837 "グループオペレータ B<()> (parenthesis group operators) が閉じていない。"
1838
1839 #. type: TP
1840 #: build/C/man3/regex.3:290
1841 #, no-wrap
1842 msgid "B<REG_ERANGE>"
1843 msgstr "B<REG_ERANGE>"
1844
1845 #. type: Plain text
1846 #: build/C/man3/regex.3:294
1847 msgid ""
1848 "Invalid use of the range operator; for example, the ending point of the "
1849 "range occurs prior to the starting point."
1850 msgstr ""
1851 "無効な範囲オペレータの使用。 例えば、範囲の終了位置が開始位置よりも前にあるよ"
1852 "うな場合。"
1853
1854 #. type: TP
1855 #: build/C/man3/regex.3:294
1856 #, no-wrap
1857 msgid "B<REG_ESIZE>"
1858 msgstr "B<REG_ESIZE>"
1859
1860 #. type: Plain text
1861 #: build/C/man3/regex.3:298
1862 msgid ""
1863 "Compiled regular expression requires a pattern buffer larger than 64Kb.  "
1864 "This is not defined by POSIX.2."
1865 msgstr ""
1866 "正規表現のコンパイルに、64Kb 以上のパターンバッファが必要。 これは POSIX.2 に"
1867 "は定義されていない。"
1868
1869 #. type: TP
1870 #: build/C/man3/regex.3:298
1871 #, no-wrap
1872 msgid "B<REG_ESPACE>"
1873 msgstr "B<REG_ESPACE>"
1874
1875 #. type: Plain text
1876 #: build/C/man3/regex.3:301
1877 msgid "The regex routines ran out of memory."
1878 msgstr "regex ルーチンがメモリを使いはたしている。"
1879
1880 #. type: TP
1881 #: build/C/man3/regex.3:301
1882 #, no-wrap
1883 msgid "B<REG_ESUBREG>"
1884 msgstr "B<REG_ESUBREG>"
1885
1886 #. type: Plain text
1887 #: build/C/man3/regex.3:304
1888 msgid "Invalid back reference to a subexpression."
1889 msgstr ""
1890 "サブエクスプレッション \\eB<(...\\e>)  (subexpression) への無効な後方参照。"
1891
1892 #. type: Plain text
1893 #: build/C/man3/regex.3:306 build/C/man3/wordexp.3:189
1894 msgid "POSIX.1-2001."
1895 msgstr "POSIX.1-2001."
1896
1897 #. type: Plain text
1898 #: build/C/man3/regex.3:309
1899 msgid "B<grep>(1), B<regex>(7)"
1900 msgstr "B<grep>(1), B<regex>(7)"
1901
1902 #. type: Plain text
1903 #: build/C/man3/regex.3:312
1904 msgid "The glibc manual section, I<Regular Expression Matching>"
1905 msgstr "glibc マニュアルのセクション I<Regular Expression Matching>"
1906
1907 #. type: TH
1908 #: build/C/man7/regex.7:37
1909 #, no-wrap
1910 msgid "2009-01-12"
1911 msgstr "2009-01-12"
1912
1913 #. type: Plain text
1914 #: build/C/man7/regex.7:40
1915 msgid "regex - POSIX.2 regular expressions"
1916 msgstr "regex - POSIX.2 正規表現"
1917
1918 #. type: Plain text
1919 #: build/C/man7/regex.7:54
1920 msgid ""
1921 "Regular expressions (\"RE\"s), as defined in POSIX.2, come in two forms: "
1922 "modern REs (roughly those of I<egrep>; POSIX.2 calls these \"extended\" "
1923 "REs)  and obsolete REs (roughly those of B<ed>(1); POSIX.2 \"basic\" REs).  "
1924 "Obsolete REs mostly exist for backward compatibility in some old programs; "
1925 "they will be discussed at the end.  POSIX.2 leaves some aspects of RE syntax "
1926 "and semantics open; \"\\*(dg\" marks decisions on these aspects that may not "
1927 "be fully portable to other POSIX.2 implementations."
1928 msgstr ""
1929 "正規表現 (Regular expression: RE) は POSIX.2 で定義されており、 二つの形式が"
1930 "ある。新しい正規表現 (modern RE) と古い正規表現 (obsolete RE)  である。新しい"
1931 "正規表現はだいたい I<egrep> のものと同じで、 POSIX.2 では「拡張」正規表現 "
1932 "(\"extended\" RE)  と呼ばれている。古い正規表現はだいたい B<ed>(1)  のものと"
1933 "同じで、 POSIX.2 では「基本」正規表現 (\"basic\" RE) である。 古い正規表現"
1934 "は、古いプログラムとの互換性を保つためのものである。 これについては最後に議論"
1935 "する。 POSIX.2 では、正規表現の文法や記号の一部が、未定義のまま残されてい"
1936 "る。 \"\\*(dg\" は、このような意味で、他の POSIX.2 の実装と 完全には互換でな"
1937 "いかも知れない部分である。"
1938
1939 #. type: Plain text
1940 #: build/C/man7/regex.7:58
1941 msgid ""
1942 "A (modern) RE is one\\*(dg or more nonempty\\*(dg I<branches>, separated by "
1943 "\\(aq|\\(aq.  It matches anything that matches one of the branches."
1944 msgstr ""
1945 "(新しい) 正規表現は一つ以上\\*(dg の空白でない I<枝 (branch)> からなる。 枝ど"
1946 "うしは \\(aq|\\(aq で区切られる。正規表現は、 枝のどれかにマッチ (match) した"
1947 "ものにマッチする。"
1948
1949 #. type: Plain text
1950 #: build/C/man7/regex.7:62
1951 msgid ""
1952 "A branch is one\\*(dg or more I<pieces>, concatenated.  It matches a match "
1953 "for the first, followed by a match for the second, and so on."
1954 msgstr ""
1955 "枝は一つ以上の文節 (piece) が結合されたものである。 枝は第一の文節がマッチ"
1956 "し、 続いて第二の文節がマッチし、... したものにマッチする。"
1957
1958 #. type: Plain text
1959 #: build/C/man7/regex.7:71
1960 msgid ""
1961 "A piece is an I<atom> possibly followed by a single\\*(dg \\(aq*\\(aq, \\(aq+"
1962 "\\(aq, \\(aq?\\(aq, or I<bound>.  An atom followed by \\(aq*\\(aq matches a "
1963 "sequence of 0 or more matches of the atom.  An atom followed by \\(aq+\\(aq "
1964 "matches a sequence of 1 or more matches of the atom.  An atom followed by "
1965 "\\(aq?\\(aq matches a sequence of 0 or 1 matches of the atom."
1966 msgstr ""
1967 "文節はI<アトム (atom)> からなる。ただしアトムの後には一つ\\*(dg の \\(aq*"
1968 "\\(aq, \\(aq+\\(aq, \\(aq?\\(aq あるいは I<繰り返し指定 (bound)> が続くことも"
1969 "ある。 \\(aq*\\(aq が後置されたアトムは、マッチしたアトムの 0 個以上の並びに"
1970 "マッチする。 \\(aq+\\(aq が後置されたアトムは、マッチしたアトムの 1 個以上の"
1971 "並びにマッチする。 \\(aq?\\(aq が後置されたアトムは、マッチしたアトムの 0 個"
1972 "または 1 個にマッチする。"
1973
1974 #. type: Plain text
1975 #: build/C/man7/regex.7:89
1976 msgid ""
1977 "A I<bound> is \\(aq{\\(aq followed by an unsigned decimal integer, possibly "
1978 "followed by \\(aq,\\(aq possibly followed by another unsigned decimal "
1979 "integer, always followed by \\(aq}\\(aq.  The integers must lie between 0 "
1980 "and B<RE_DUP_MAX> (255\\*(dg) inclusive, and if there are two of them, the "
1981 "first may not exceed the second.  An atom followed by a bound containing one "
1982 "integer I<i> and no comma matches a sequence of exactly I<i> matches of the "
1983 "atom.  An atom followed by a bound containing one integer I<i> and a comma "
1984 "matches a sequence of I<i> or more matches of the atom.  An atom followed by "
1985 "a bound containing two integers I<i> and I<j> matches a sequence of I<i> "
1986 "through I<j> (inclusive) matches of the atom."
1987 msgstr ""
1988 "I<繰り返し指定>とは \\(aq{\\(aq に続いて、符号なし 10 進整数、\\(aq,\\(aq、 "
1989 "もう一つの 10 進整数、\\(aq}\\(aq を並べたものである。\\(aq,\\(aq と二つめの "
1990 "10 進整数は省略できる。二つめの 10 進整数だけを省略することもできる (最後の "
1991 "`}' は省略できない)。 整数は 0 以上 B<RE_DUP_MAX> (255\\*(dg) 以下の間で指定"
1992 "できる。 二つ指定する場合には、最初の数値は後の数値を越えてはならない。 整数 "
1993 "I<i> だけからなる繰り返し指定を後置されたアトムは、 アトムをぴったりちょうど "
1994 "I<i> 個だけ並べたものにマッチする。 整数 I<i> とコンマが指定された繰り返し指"
1995 "定を後置されたアトムは、 アトムを I<i>個以上並べたものにマッチする。 整数 "
1996 "I<i> と I<j> が指定された繰り返し指定を後置されたアトムは、 アトムを I<i>個以"
1997 "上 I<j> 個以下だけ並べたものにマッチする。"
1998
1999 #. type: Plain text
2000 #: build/C/man7/regex.7:106
2001 msgid ""
2002 "An atom is a regular expression enclosed in \"I<()>\" (matching a match for "
2003 "the regular expression), an empty set of \"I<()>\" (matching the null "
2004 "string)\\*(dg, a I<bracket expression> (see below), \\(aq.\\(aq (matching "
2005 "any single character), \\(aq^\\(aq (matching the null string at the "
2006 "beginning of a line), \\(aq$\\(aq (matching the null string at the end of a "
2007 "line), a \\(aq\\e\\(aq followed by one of the characters \"I<^.[$()|*+?{\\e>"
2008 "\" (matching that character taken as an ordinary character), a \\(aq\\e\\(aq "
2009 "followed by any other character\\*(dg (matching that character taken as an "
2010 "ordinary character, as if the \\(aq\\e\\(aq had not been present\\*(dg), or "
2011 "a single character with no other significance (matching that character).  A "
2012 "\\(aq{\\(aq followed by a character other than a digit is an ordinary "
2013 "character, not the beginning of a bound\\*(dg.  It is illegal to end an RE "
2014 "with \\(aq\\e\\(aq."
2015 msgstr ""
2016 "アトムの種類は以下の通り。\"I<()>\" に囲まれた正規表現 (その正規表現がマッチ"
2017 "する文字列にマッチする)、 中身が空の \"I<()>\" (null 文字列にマッチする)\\*"
2018 "(dg、 I<ブラケット表現 (bracket expression> :後述)、 \\(aq.\\(aq (任意の 1 文"
2019 "字にマッチする)、 \\(aq^\\(aq (行頭の空白文字にマッチする)、 \\(aq$\\(aq (行"
2020 "末の空白文字にマッチする)、 \\(aq\\e\\(aq に \"I<^.[$()|*+?{\\e>\" のいずれか"
2021 "一文字を後置したもの (通常の文字として扱われ、その文字にマッチする)、 \\(aq"
2022 "\\e\\(aq にそれ以外の文字を後置したもの\\*(dg (\\(aq\\e\\(aq がない場合と同じ"
2023 "ように、その文字にマッチする\\*(dg)、 特に意味を持たない文字一つ (その文字に"
2024 "マッチする)。 \\(aq{\\(aq は数字以外の文字が後置されると通常の文字として扱わ"
2025 "れ、 繰り返し指定の始まりとはされない\\*(dg。\\(aq\\e\\(aq で終わる正規表現は"
2026 "不正なものとみなされる。"
2027
2028 #. type: Plain text
2029 #: build/C/man7/regex.7:120
2030 msgid ""
2031 "A I<bracket expression> is a list of characters enclosed in \"I<[]>\".  It "
2032 "normally matches any single character from the list (but see below).  If the "
2033 "list begins with \\(aq^\\(aq, it matches any single character (but see "
2034 "below) I<not> from the rest of the list.  If two characters in the list are "
2035 "separated by \\(aq-\\(aq, this is shorthand for the full I<range> of "
2036 "characters between those two (inclusive) in the collating sequence, for "
2037 "example, \"I<[0-9]>\" in ASCII matches any decimal digit.  It is illegal\\*"
2038 "(dg for two ranges to share an endpoint, for example, \"I<a-c-e>\".  Ranges "
2039 "are very collating-sequence-dependent, and portable programs should avoid "
2040 "relying on them."
2041 msgstr ""
2042 "I<ブラケット表現>は \"I<[]>\" によって閉じられた文字のリストである。 これは通"
2043 "常リスト中に存在している文字にマッチする。 (例外あり、後述。) リストが \\(aq^"
2044 "\\(aq で始まると、 I<ブラケット表現>はリストに存在してI<いない>文字一つにマッ"
2045 "チする (例外あり、後述)。 リスト中の二つの文字が \\(aq-\\(aq で区切られている"
2046 "場合は、 これは照合順序 (collating sequence) でその二つの文字に挟まれる、 す"
2047 "べての文字の並びを短縮したものとみなされる (両端含む)。 例えば \"I<[0-9]>\" "
2048 "は ASCII では 10 進の数字 (digit) のいずれかにマッチする。 二つの領域指定が端"
2049 "点を共有してはならない\\*(dg。 つまり \"I<a-c-e>\" のようなものは不正である。"
2050 "領域指定は照合順序に強く依存する。 したがって移植性の高いプログラムを作る場合"
2051 "は、 領域指定には頼らないほうが良いだろう。 【B<訳注>: 照合順序 (collating "
2052 "sequence) というのは、国際化 (Internationalization) に関連した用語です。アル"
2053 "ファベット順に単語を並 べる際には、言語によって並べる基準が異なります。照合順"
2054 "序は、その差異を 吸収するための仕組みです。 例えば、スペイン語では ch という"
2055 "文字並びを特別扱いするため、アルファベッ ト順が a, b, c, ch, d, e, ... の順に"
2056 "なるそうです。このようなシーケンス のことを collating sequence と言います。こ"
2057 "のとき `ch' という文字並びは、 単語整列の際にあたかも「一文字」のように扱われ"
2058 "ます。ここで、 順序付けを行う際に最小の単位となる、`a'、`b' の文字や `ch' の"
2059 "ような特別な文字並びなど、照合順序の要素のことを collating element と言いま"
2060 "す。collating sequence は、文字単位ではなく collating element を単位として定"
2061 "義されます。】"
2062
2063 #. type: Plain text
2064 #: build/C/man7/regex.7:131
2065 msgid ""
2066 "To include a literal \\(aq]\\(aq in the list, make it the first character "
2067 "(following a possible \\(aq^\\(aq).  To include a literal \\(aq-\\(aq, make "
2068 "it the first or last character, or the second endpoint of a range.  To use a "
2069 "literal \\(aq-\\(aq as the first endpoint of a range, enclose it in \"I<[.>"
2070 "\" and \"I<.]>\" to make it a collating element (see below).  With the "
2071 "exception of these and some combinations using \\(aq[\\(aq (see next "
2072 "paragraphs), all other special characters, including \\(aq\\e\\(aq, lose "
2073 "their special significance within a bracket expression."
2074 msgstr ""
2075 "文字 \\(aq]\\(aq そのものをリストに入れたい場合は、 最初の文字として指定すれ"
2076 "ば良い (\\(aq^\\(aq) の後に続けるのでも良い)。 文字 \\(aq-\\(aq そのものをリ"
2077 "ストに入れたい場合は、 最初か最後の文字とすれば良い。 あるいは領域指定の終端"
2078 "文字として指定しても良い。 \\(aq-\\(aq を領域指定の先頭文字に指定するに"
2079 "は、\"I<[.>\" と \"I<.]>\" で囲って、 照合順序の要素 (collating element: 後"
2080 "述) にすれば良い。 他の特殊文字 ( も含む) は、 ブラケット表現の内部ではすべて"
2081 "通常の文字として扱われる。"
2082
2083 #. type: Plain text
2084 #: build/C/man7/regex.7:143
2085 msgid ""
2086 "Within a bracket expression, a collating element (a character, a "
2087 "multicharacter sequence that collates as if it were a single character, or a "
2088 "collating-sequence name for either)  enclosed in \"I<[.>\" and \"I<.]>\" "
2089 "stands for the sequence of characters of that collating element.  The "
2090 "sequence is a single element of the bracket expression's list.  A bracket "
2091 "expression containing a multicharacter collating element can thus match more "
2092 "than one character, for example, if the collating sequence includes a \"ch\" "
2093 "collating element, then the RE \"I<[[.ch.]]*c>\" matches the first five "
2094 "characters of \"chchcc\"."
2095 msgstr ""
2096 "ブラケット表現の内部では、\"I<[.>\" と \"I<.]>\" に囲われた照合順序の要素"
2097 "は、 その要素に対応する文字並びを表す。 「照合順序の要素」とは、 [1] 文字、 "
2098 "[2] 単一文字のように扱われる複数文字のシーケンス、 [3] 1, 2 いずれかに対応す"
2099 "る照合順序上の名前、のいずれかである。 この繰り返しは、ブラケット表現のリスト"
2100 "における単一の要素となる。 上記 [2] の、「複数文字からなる照合順序要素」を含"
2101 "むブラケット表現は、 したがって一文字以上にマッチすることがある。 例えば、も"
2102 "し照合順序が \"ch\" という要素を含んでいる場合には、 正規表現 \"I<[[.ch.]]*c>"
2103 "\" は \"chchcc\" の最初の 5 文字にマッチする。"
2104
2105 #. type: Plain text
2106 #: build/C/man7/regex.7:155
2107 msgid ""
2108 "Within a bracket expression, a collating element enclosed in \"I<[=>\" and "
2109 "\"I<=]>\" is an equivalence class, standing for the sequences of characters "
2110 "of all collating elements equivalent to that one, including itself.  (If "
2111 "there are no other equivalent collating elements, the treatment is as if the "
2112 "enclosing delimiters were \"I<[.>\" and \"I<.]>\".)  For example, if o and "
2113 "\\o'o^' are the members of an equivalence class, then \"I<[[=o=]]>\", \"I<[[="
2114 "\\o'o^'=]]>\", and \"I<[o\\o'o^']>\" are all synonymous.  An equivalence "
2115 "class may not\\*(dg be an endpoint of a range."
2116 msgstr ""
2117 "ブラケット表現の内部では、\"I<[=>\" と \"I<=]>\" に囲まれた照合順序の要素"
2118 "は、 等価クラス (equivalence class) となる。 これは、その要素と等価な要素すべ"
2119 "てからなる文字シーケンス (自身も含む) を表す。 他に等価な要素がなければ、 取"
2120 "り扱いは \"I<[.>\" と \"I<.]>\" で囲まれている場合と同じである。 例えば o と "
2121 "ou が等価クラスのメンバーであれば、 \"I<[[=o=]]>\", \"I<[[=\\o'o^'=]]>\", "
2122 "\"I<[o\\o'o^']>\" はすべて同じ意味になる。 等価クラスは領域指定の端点にはなれ"
2123 "ない\\*(dg。"
2124
2125 #. type: Plain text
2126 #: build/C/man7/regex.7:161
2127 msgid ""
2128 "Within a bracket expression, the name of a I<character class> enclosed in "
2129 "\"I<[:>\" and \"I<:]>\" stands for the list of all characters belonging to "
2130 "that class.  Standard character class names are:"
2131 msgstr ""
2132 "ブラケット表現の内部では、\"I<[:>\" と \"I<:]>\" で囲われたI<文字クラス "
2133 "(character class)> はそのクラスに属するすべての文字のリストを表す。 標準で用"
2134 "意されている文字クラスの名前は以下の通り:"
2135
2136 #. type: tbl table
2137 #: build/C/man7/regex.7:165
2138 #, no-wrap
2139 msgid "alnum\tdigit\tpunct\n"
2140 msgstr "alnum\tdigit\tpunct\n"
2141
2142 #. type: tbl table
2143 #: build/C/man7/regex.7:166
2144 #, no-wrap
2145 msgid "alpha\tgraph\tspace\n"
2146 msgstr "alpha\tgraph\tspace\n"
2147
2148 #. type: tbl table
2149 #: build/C/man7/regex.7:167
2150 #, no-wrap
2151 msgid "blank\tlower\tupper\n"
2152 msgstr "blank\tlower\tupper\n"
2153
2154 #. type: tbl table
2155 #: build/C/man7/regex.7:168
2156 #, no-wrap
2157 msgid "cntrl\tprint\txdigit\n"
2158 msgstr "cntrl\tprint\txdigit\n"
2159
2160 #.  As per http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=295666
2161 #.  The following does not seem to apply in the glibc implementation
2162 #.  .PP
2163 #.  There are two special cases\*(dg of bracket expressions:
2164 #.  the bracket expressions "\fI[[:<:]]\fP" and "\fI[[:>:]]\fP" match
2165 #.  the null string at the beginning and end of a word respectively.
2166 #.  A word is defined as a sequence of
2167 #.  word characters
2168 #.  which is neither preceded nor followed by
2169 #.  word characters.
2170 #.  A word character is an
2171 #.  .I alnum
2172 #.  character (as defined by
2173 #.  .BR wctype (3))
2174 #.  or an underscore.
2175 #.  This is an extension,
2176 #.  compatible with but not specified by POSIX.2,
2177 #.  and should be used with
2178 #.  caution in software intended to be portable to other systems.
2179 #. type: Plain text
2180 #: build/C/man7/regex.7:195
2181 msgid ""
2182 "These stand for the character classes defined in B<wctype>(3).  A locale may "
2183 "provide others.  A character class may not be used as an endpoint of a range."
2184 msgstr ""
2185 "これらは B<wctype>(3)  で定義されている文字クラスを表している。ロケール "
2186 "(locale) によって、 これら以外のクラスが定義されることもある。 文字クラスは領"
2187 "域指定の端点にはなれない。"
2188
2189 #. type: Plain text
2190 #: build/C/man7/regex.7:207
2191 msgid ""
2192 "In the event that an RE could match more than one substring of a given "
2193 "string, the RE matches the one starting earliest in the string.  If the RE "
2194 "could match more than one substring starting at that point, it matches the "
2195 "longest.  Subexpressions also match the longest possible substrings, subject "
2196 "to the constraint that the whole match be as long as possible, with "
2197 "subexpressions starting earlier in the RE taking priority over ones starting "
2198 "later.  Note that higher-level subexpressions thus take priority over their "
2199 "lower-level component subexpressions."
2200 msgstr ""
2201 "正規表現が、与えられた文字列の複数の部分文字列 (substring) にマッチできるよう"
2202 "な場合には、 最も先頭の近くから始まるものにマッチする。 その位置から始まり、"
2203 "正規表現がマッチできる部分文字列が複数ある場合には、 最長のものにマッチす"
2204 "る。 部分正規表現 (subexpression) も最も長い部分文字列にマッチする。 ただし、"
2205 "全体のマッチが最長であるように、という条件が優先される。 正規表現の中で先に現"
2206 "れる部分正規表現は、後に現れるものより優先される。 ただし、より高位の部分正規"
2207 "表現は、 それを構成する低位の部分正規表現よりも優先されることに注意すること。"
2208
2209 #. type: Plain text
2210 #: build/C/man7/regex.7:219
2211 msgid ""
2212 "Match lengths are measured in characters, not collating elements.  A null "
2213 "string is considered longer than no match at all.  For example, \"I<bb*>\" "
2214 "matches the three middle characters of \"abbbc\", \"I<(wee|week)(knights|"
2215 "nights)>\" matches all ten characters of \"weeknights\", when \"I<(.*).*>\" "
2216 "is matched against \"abc\" the parenthesized subexpression matches all three "
2217 "characters, and when \"I<(a*)*>\" is matched against \"bc\" both the whole "
2218 "RE and the parenthesized subexpression match the null string."
2219 msgstr ""
2220 "マッチ長は照合順序の要素ではなく、文字数を単位としてカウントされる。 null 文"
2221 "字列は、全くマッチしなかった場合よりも長いとみなされる。 例えば \"I<bb*>\" "
2222 "は \"abbbc\" のまん中の 3 文字にマッチする。 \"I<(wee|week)(knights|nights)>"
2223 "\" は \"weeknights\" の全体にマッチする。 \"I<(.*).*>\" を \"abc\" にマッチさ"
2224 "せると、 括弧の内部の部分正規表現が 3 文字すべてにマッチする。 \"I<(a*)*>\" "
2225 "を \"bc\" にマッチさせると、正規表現全体も、 括弧で括られた部分正規表現も "
2226 "null 文字列にマッチする。"
2227
2228 #. type: Plain text
2229 #: build/C/man7/regex.7:230
2230 msgid ""
2231 "If case-independent matching is specified, the effect is much as if all case "
2232 "distinctions had vanished from the alphabet.  When an alphabetic that exists "
2233 "in multiple cases appears as an ordinary character outside a bracket "
2234 "expression, it is effectively transformed into a bracket expression "
2235 "containing both cases, for example, \\(aqx\\(aq becomes \"I<[xX]>\".  When "
2236 "it appears inside a bracket expression, all case counterparts of it are "
2237 "added to the bracket expression, so that, for example, \"I<[x]>\" becomes "
2238 "\"I<[xX]>\" and \"I<[^x]>\" becomes \"I<[^xX]>\"."
2239 msgstr ""
2240 "マッチが大文字・小文字を無視するように指定されると、 アルファベット全体から大"
2241 "小文字の区別が無くなったかのような効果となる。 大文字・小文字を持つアルファ"
2242 "ベットがブラケット表現の外部で 通常の文字として現れると、 これは実効的に大小"
2243 "両方の文字のブラケット表現のように変換される。 すなわち \\(aqx\\(aq は \"I<"
2244 "[xX]>\" となる。ブラケット表現の内部に現れると、 大文字なら小文字が、小文字な"
2245 "ら大文字がそのブラケット表現に加えられる。 すなわち \"I<[x]>\" は \"I<[xX]>"
2246 "\" に、\"I<[^x]>\" は \"I<[^xX]>\" になる。"
2247
2248 #. type: Plain text
2249 #: build/C/man7/regex.7:236
2250 msgid ""
2251 "No particular limit is imposed on the length of REs\\*(dg.  Programs "
2252 "intended to be portable should not employ REs longer than 256 bytes, as an "
2253 "implementation can refuse to accept such REs and remain POSIX-compliant."
2254 msgstr ""
2255 "正規表現の長さには特に制限はない\\*(dg。 ただし移植性を高くしたいプログラムで"
2256 "は、 256 バイトより長い正規表現は実行しないようにするほうが良い。 なぜなら、"
2257 "そのような正規表現を拒否し、 しかも POSIX 互換を保つような実装が可能だからで"
2258 "ある。"
2259
2260 #. type: Plain text
2261 #: build/C/man7/regex.7:252
2262 msgid ""
2263 "Obsolete (\"basic\") regular expressions differ in several respects.  \\(aq|"
2264 "\\(aq, \\(aq+\\(aq, and \\(aq?\\(aq are ordinary characters and there is no "
2265 "equivalent for their functionality.  The delimiters for bounds are \"I<\\e{>"
2266 "\" and \"I<\\e}>\", with \\(aq{\\(aq and \\(aq}\\(aq by themselves ordinary "
2267 "characters.  The parentheses for nested subexpressions are \"I<\\e(>\" and "
2268 "\"I<\\e)>\", with \\(aq(\\(aq and \\(aq)\\(aq by themselves ordinary "
2269 "characters.  \\(aq^\\(aq is an ordinary character except at the beginning of "
2270 "the RE or\\*(dg the beginning of a parenthesized subexpression, \\(aq$\\(aq "
2271 "is an ordinary character except at the end of the RE or\\*(dg the end of a "
2272 "parenthesized subexpression, and \\(aq*\\(aq is an ordinary character if it "
2273 "appears at the beginning of the RE or the beginning of a parenthesized "
2274 "subexpression (after a possible leading \\(aq^\\(aq)."
2275 msgstr ""
2276 "古い (\"基本\") 正規表現は、いくつかの点において異なる。 \\(aq|\\(aq, \\(aq+"
2277 "\\(aq, and \\(aq?\\(aq は通常の文字となる。 対応する機能は存在しない。繰り返"
2278 "し指定の区切りは \"I<\\e{>\" および \"I<\\e}>\" となる。\\(aq{\\(aq と "
2279 "\\(aq}\\(aq は、 単独では通常の文字として扱われる。 部分正規表現をネストする"
2280 "括弧は \"I<\\e(>\" および \"I<\\e)>\" となり、 \\(aq(\\(aq と \\(aq)\\(aq は"
2281 "単独では通常の文字となる。 \\(aq^\\(aq は正規表現の先頭か、 括弧でくくられた"
2282 "部分表現の先頭\\*(dgを除いて通常の文字となる。 \\(aq$\\(aq は正規表現の末尾"
2283 "か、 括弧でくくられた部分正規表現の末尾\\*(dgを除いて通常の文字となる。 "
2284 "\\(aq*\\(aq は、正規表現の先頭か、 括弧でくくられた部分文字列の先頭に置かれた"
2285 "場合は通常の文字となる (\\(aq^\\(aq) が前置されていてもよい)。"
2286
2287 #. type: Plain text
2288 #: build/C/man7/regex.7:260
2289 msgid ""
2290 "Finally, there is one new type of atom, a I<back reference>: \\(aq\\e\\(aq "
2291 "followed by a nonzero decimal digit I<d> matches the same sequence of "
2292 "characters matched by the I<d>th parenthesized subexpression (numbering "
2293 "subexpressions by the positions of their opening parentheses, left to "
2294 "right), so that, for example, \"I<\\e([bc]\\e)\\e1>\" matches \"bb\" or \"cc"
2295 "\" but not \"bc\"."
2296 msgstr ""
2297 "最後に、アトムとして別のタイプが存在する。 I<後方参照 (back reference)> であ"
2298 "る。 \\(aq\\e\\(aq の後に 0 でない 10 進数値文字 I<d> が続くと、 括弧でくくら"
2299 "れた部分正規表現の I<d> 番目にマッチした文字並びと同じものにマッチする。 (部"
2300 "分正規表現の番号付けは、 開き括弧 `(' の位置が左のものから右のものへ向かって"
2301 "なされる。)  したがって \"I<\\e([bc]\\e)\\e1>\" は \"bb\" または \"cc\" には"
2302 "マッチするが、\"bc\" にはマッチしない。"
2303
2304 #. type: Plain text
2305 #: build/C/man7/regex.7:262
2306 msgid "Having two kinds of REs is a botch."
2307 msgstr "正規表現が 2 種類あるのは格好悪い。"
2308
2309 #. type: Plain text
2310 #: build/C/man7/regex.7:268
2311 msgid ""
2312 "The current POSIX.2 spec says that \\(aq)\\(aq is an ordinary character in "
2313 "the absence of an unmatched \\(aq(\\(aq; this was an unintentional result of "
2314 "a wording error, and change is likely.  Avoid relying on it."
2315 msgstr ""
2316 "現在の POSIX.2 規格においては、\\(aq)\\(aq は、 対応する \\(aq(\\(aq がない場"
2317 "合には通常の文字として扱われることになっている。 しかしこれは、本来の意図とは"
2318 "異なる記述上のエラーであり、 修正される可能性が高い。これに依存したコードは使"
2319 "わないこと。"
2320
2321 #. type: Plain text
2322 #: build/C/man7/regex.7:275
2323 msgid ""
2324 "Back references are a dreadful botch, posing major problems for efficient "
2325 "implementations.  They are also somewhat vaguely defined (does \"I<a\\e(\\e(b"
2326 "\\e)*\\e2\\e)*d>\" match \"abbbd\"?).  Avoid using them."
2327 msgstr ""
2328 "後方参照はひどく出来の悪い代物である。 効率の良い実装をするのはとても難し"
2329 "い。 また定義があいまいである。 (\"I<a\\e(\\e(b\\e)*\\e2\\e)*d>\" は \"abbbd"
2330 "\" にマッチすると思うか?)  使わないほうが良い。"
2331
2332 #.  As per http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=295666
2333 #.  The following does not seem to apply in the glibc implementation
2334 #.  .PP
2335 #.  The syntax for word boundaries is incredibly ugly.
2336 #. type: Plain text
2337 #: build/C/man7/regex.7:283
2338 msgid ""
2339 "POSIX.2's specification of case-independent matching is vague.  The \"one "
2340 "case implies all cases\" definition given above is current consensus among "
2341 "implementors as to the right interpretation."
2342 msgstr ""
2343 "POSIX.2 の規格では、case (大文字か小文字か)  に依存しないマッチの記述があいま"
2344 "いである。 現在のところでは「一つの case がすべての case を意味する」 という"
2345 "上記の定義が正しい解釈であるというのが、 実装者の間での共通認識のようである。"
2346
2347 #. type: SH
2348 #: build/C/man7/regex.7:283
2349 #, no-wrap
2350 msgid "AUTHOR"
2351 msgstr "著者"
2352
2353 #.  Sigh... The page license means we must have the author's name
2354 #.  in the formatted output.
2355 #. type: Plain text
2356 #: build/C/man7/regex.7:287
2357 msgid "This page was taken from Henry Spencer's regex package."
2358 msgstr "このページは Henry Spencer の regex パッケージから採録したものである。"
2359
2360 #. type: Plain text
2361 #: build/C/man7/regex.7:290
2362 msgid "B<grep>(1), B<regex>(3)"
2363 msgstr "B<grep>(1), B<regex>(3)"
2364
2365 #. type: Plain text
2366 #: build/C/man7/regex.7:292
2367 msgid "POSIX.2, section 2.8 (Regular Expression Notation)."
2368 msgstr "POSIX.2, section 2.8 (Regular Expression Notation)."
2369
2370 #. type: TH
2371 #: build/C/man3/wordexp.3:24
2372 #, no-wrap
2373 msgid "WORDEXP"
2374 msgstr "WORDEXP"
2375
2376 #. type: TH
2377 #: build/C/man3/wordexp.3:24
2378 #, no-wrap
2379 msgid "2008-07-14"
2380 msgstr "2008-07-14"
2381
2382 #. type: Plain text
2383 #: build/C/man3/wordexp.3:27
2384 msgid "wordexp, wordfree - perform word expansion like a posix-shell"
2385 msgstr "wordexp, wordfree - posix シェルのように単語の展開を行う"
2386
2387 #. type: Plain text
2388 #: build/C/man3/wordexp.3:29
2389 msgid "B<#include E<lt>wordexp.hE<gt>>"
2390 msgstr "B<#include E<lt>wordexp.hE<gt>>"
2391
2392 #. type: Plain text
2393 #: build/C/man3/wordexp.3:31
2394 msgid ""
2395 "B<int wordexp(const char *>I<s>B<, wordexp_t *>I<p>B<, int >I<flags>B<);>"
2396 msgstr ""
2397 "B<int wordexp(const char *>I<s>B<, wordexp_t *>I<p>B<, int >I<flags>B<);>"
2398
2399 #. type: Plain text
2400 #: build/C/man3/wordexp.3:33
2401 msgid "B<void wordfree(wordexp_t *>I<p>B<);>"
2402 msgstr "B<void wordfree(wordexp_t *>I<p>B<);>"
2403
2404 #. type: Plain text
2405 #: build/C/man3/wordexp.3:37
2406 msgid ""
2407 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
2408 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
2409
2410 #. type: Plain text
2411 #: build/C/man3/wordexp.3:42
2412 msgid "B<wordexp>(), B<wordfree>(): _XOPEN_SOURCE"
2413 msgstr "B<wordexp>(), B<wordfree>(): _XOPEN_SOURCE"
2414
2415 #. type: Plain text
2416 #: build/C/man3/wordexp.3:76
2417 msgid ""
2418 "The function B<wordexp>()  performs a shell-like expansion of the string "
2419 "I<s> and returns the result in the structure pointed to by I<p>.  The data "
2420 "type I<wordexp_t> is a structure that at least has the fields I<we_wordc>, "
2421 "I<we_wordv>, and I<we_offs>.  The field I<we_wordc> is a I<size_t> that "
2422 "gives the number of words in the expansion of I<s>.  The field I<we_wordv> "
2423 "is a I<char\\ **> that points to the array of words found.  The field "
2424 "I<we_offs> of type I<size_t> is sometimes (depending on I<flags>, see below) "
2425 "used to indicate the number of initial elements in the I<we_wordv> array "
2426 "that should be filled with NULLs."
2427 msgstr ""
2428 "関数 B<wordexp>()  はシェルのように文字列 I<s> を展開し、 I<p> で指し示す構造"
2429 "体に結果を返す。 データ型 I<wordexp_t> は少なくともフィールド I<we_wordc>, "
2430 "I<we_wordv>, I<we_offs> を持つ構造体である。 フィールド I<we_wordc> は "
2431 "I<size_t> であり、 I<s> を展開した結果に単語がいくつあるかを表す。 フィール"
2432 "ド I<we_wordv> は I<char\\ **> であり、見つかった単語の配列を指し示す。 "
2433 "I<size_t> 型のフィールド I<we_offs> は、 I<we_wordv> 配列にある初期要素のうち"
2434 "いくつが NULL で埋められるべきかを表すのに使われたりする (I<flags> により決定"
2435 "される。下記を参照。)。"
2436
2437 #. type: Plain text
2438 #: build/C/man3/wordexp.3:84
2439 msgid ""
2440 "The function B<wordfree>()  frees the allocated memory again.  More "
2441 "precisely, it does not free its argument, but it frees the array I<we_wordv> "
2442 "and the strings that points to."
2443 msgstr ""
2444 "関数 B<wordfree>()  は割り当てたメモリを再度解放する。 より正確にいうと、この"
2445 "関数はその引き数を解放するのではなく、 配列 I<we_wordv> とそれが指し示す文字"
2446 "列を解放する。"
2447
2448 #. type: SS
2449 #: build/C/man3/wordexp.3:84
2450 #, no-wrap
2451 msgid "The string argument"
2452 msgstr "文字列引き数"
2453
2454 #. type: Plain text
2455 #: build/C/man3/wordexp.3:94
2456 msgid ""
2457 "Since the expansion is the same as the expansion by the shell (see B<sh>"
2458 "(1))  of the parameters to a command, the string I<s> must not contain "
2459 "characters that would be illegal in shell command parameters.  In "
2460 "particular, there must not be any unescaped newline or |, &, ;, E<lt>, "
2461 "E<gt>, (, ), {, } characters outside a command substitution or parameter "
2462 "substitution context."
2463 msgstr ""
2464 "この展開はシェルによるコマンドのパラメータの展開 (B<sh>(1)  を参照) と同じで"
2465 "あるので、文字列 I<s> はシェルコマンドパラメータで不正とされる文字を含んでは"
2466 "ならない。 特にエスケープされていない改行、|, &, ;, E<lt>, E<gt>, (, ), {, } "
2467 "文字を コマンド置換やパラメータ置換の場面以外に含めてはならない。"
2468
2469 #. type: Plain text
2470 #: build/C/man3/wordexp.3:100
2471 msgid ""
2472 "If the argument I<s> contains a word that starts with an unquoted comment "
2473 "character #, then it is unspecified whether that word and all following "
2474 "words are ignored, or the # is treated as a non-comment character."
2475 msgstr ""
2476 "引き数 I<s> にクォートしていないコメント文字 # で始まる単語が含まれている場合"
2477 "には、 その単語とそれ以降の単語が無視されるか、 それとも # がコメント文字とし"
2478 "て扱わないかは、規定されていない。"
2479
2480 #. type: SS
2481 #: build/C/man3/wordexp.3:100
2482 #, no-wrap
2483 msgid "The expansion"
2484 msgstr "展開"
2485
2486 #. type: Plain text
2487 #: build/C/man3/wordexp.3:107
2488 msgid ""
2489 "The expansion done consists of the following stages: tilde expansion "
2490 "(replacing ~user by user's home directory), variable substitution (replacing "
2491 "$FOO by the value of the environment variable FOO), command substitution "
2492 "(replacing $(command) or \\`command\\` by the output of command), arithmetic "
2493 "expansion, field splitting, wildcard expansion, quote removal."
2494 msgstr ""
2495 "実行される展開は、以下の段階で構成される: チルダ展開 (~user を user のホーム"
2496 "ディレクトリに置き換える)、 変数展開 ($FOO を環境変数 FOO の値に置き換え"
2497 "る)、 コマンド展開 ($(command) または \\`command\\` を command の出力で置き換"
2498 "える)、 算術展開、フィールド分割、ワイルドカード展開、クォートの除去。"
2499
2500 #. type: Plain text
2501 #: build/C/man3/wordexp.3:110
2502 msgid ""
2503 "The result of expansion of special parameters ($@, $*, $#, $?, $-, $$, $!, "
2504 "$0) is unspecified."
2505 msgstr ""
2506 "特殊なパラメータ ($@, $*, $#, $?, $-, $$, $!, $0) の 展開結果は規定されていな"
2507 "い。"
2508
2509 #. type: Plain text
2510 #: build/C/man3/wordexp.3:113
2511 msgid ""
2512 "Field splitting is done using the environment variable $IFS.  If it is not "
2513 "set, the field separators are space, tab and newline."
2514 msgstr ""
2515 "フィールド分割は環境変数 $IFS を用いて行われる。 この環境変数が設定されていな"
2516 "い場合、 フィールド区切り文字はスペース・タブ・改行である。"
2517
2518 #. type: SS
2519 #: build/C/man3/wordexp.3:113
2520 #, no-wrap
2521 msgid "The output array"
2522 msgstr "出力される配列"
2523
2524 #. type: Plain text
2525 #: build/C/man3/wordexp.3:117
2526 msgid "The array I<we_wordv> contains the words found, followed by a NULL."
2527 msgstr "配列 I<we_wordv> は見つかった単語をを含み、最後に NULL が続く。"
2528
2529 #. type: SS
2530 #: build/C/man3/wordexp.3:117
2531 #, no-wrap
2532 msgid "The flags argument"
2533 msgstr "flags 引き数"
2534
2535 #. type: Plain text
2536 #: build/C/man3/wordexp.3:121
2537 msgid "The I<flag> argument is a bitwise inclusive OR of the following values:"
2538 msgstr "I<flags> 引き数は以下の値のビット包含的 OR である:"
2539
2540 #. type: TP
2541 #: build/C/man3/wordexp.3:121
2542 #, no-wrap
2543 msgid "B<WRDE_APPEND>"
2544 msgstr "B<WRDE_APPEND>"
2545
2546 #. type: Plain text
2547 #: build/C/man3/wordexp.3:124
2548 msgid "Append the words found to the array resulting from a previous call."
2549 msgstr "見つかった単語を前回の呼び出し結果の配列に追加する。"
2550
2551 #. type: TP
2552 #: build/C/man3/wordexp.3:124
2553 #, no-wrap
2554 msgid "B<WRDE_DOOFFS>"
2555 msgstr "B<WRDE_DOOFFS>"
2556
2557 #. type: Plain text
2558 #: build/C/man3/wordexp.3:132
2559 msgid ""
2560 "Insert I<we_offs> initial NULLs in the array I<we_wordv>.  (These are not "
2561 "counted in the returned I<we_wordc>.)"
2562 msgstr ""
2563 "初期状態である I<we_offs> 個の NULL を配列 I<we_wordv> に挿入する (これらは返"
2564 "される I<we_wordc> にはカウントされない)。"
2565
2566 #. type: TP
2567 #: build/C/man3/wordexp.3:132
2568 #, no-wrap
2569 msgid "B<WRDE_NOCMD>"
2570 msgstr "B<WRDE_NOCMD>"
2571
2572 #. type: Plain text
2573 #: build/C/man3/wordexp.3:135
2574 msgid "Don't do command substitution."
2575 msgstr "コマンド置換を行わない。"
2576
2577 #. type: TP
2578 #: build/C/man3/wordexp.3:135
2579 #, no-wrap
2580 msgid "B<WRDE_REUSE>"
2581 msgstr "B<WRDE_REUSE>"
2582
2583 #. type: Plain text
2584 #: build/C/man3/wordexp.3:145
2585 msgid ""
2586 "The argument I<p> resulted from a previous call to B<wordexp>(), and "
2587 "B<wordfree>()  was not called.  Reuse the allocated storage."
2588 msgstr ""
2589 "引き数 I<p> は前回の B<wordexp>()  の呼び出し結果であり、 B<wordfree>()  が "
2590 "(まだ) 呼び出されない。 割り当てられた領域を再利用する。"
2591
2592 #. type: TP
2593 #: build/C/man3/wordexp.3:145
2594 #, no-wrap
2595 msgid "B<WRDE_SHOWERR>"
2596 msgstr "B<WRDE_SHOWERR>"
2597
2598 #. type: Plain text
2599 #: build/C/man3/wordexp.3:154
2600 msgid ""
2601 "Normally during command substitution I<stderr> is redirected to I</dev/"
2602 "null>.  This flag specifies that I<stderr> is not to be redirected."
2603 msgstr ""
2604 "通常はコマンド置換のときに I<stderr> が I</dev/null> にリダイレクトされる。 "
2605 "このフラグは I<stderr> をリダイレクトしないように指定する。"
2606
2607 #. type: TP
2608 #: build/C/man3/wordexp.3:154
2609 #, no-wrap
2610 msgid "B<WRDE_UNDEF>"
2611 msgstr "B<WRDE_UNDEF>"
2612
2613 #. type: Plain text
2614 #: build/C/man3/wordexp.3:157
2615 msgid "Consider it an error if an undefined shell variable is expanded."
2616 msgstr "未定義のシェル変数を展開しようとした場合に、エラーとして扱う。"
2617
2618 #. type: Plain text
2619 #: build/C/man3/wordexp.3:161
2620 msgid ""
2621 "In case of success 0 is returned.  In case of error one of the following "
2622 "five values is returned."
2623 msgstr ""
2624 "成功した場合は 0 が返される。 エラーの場合は以下の 5 つの値のうちの 1 つが返"
2625 "される。"
2626
2627 #. type: TP
2628 #: build/C/man3/wordexp.3:161
2629 #, no-wrap
2630 msgid "B<WRDE_BADCHAR>"
2631 msgstr "B<WRDE_BADCHAR>"
2632
2633 #. type: Plain text
2634 #: build/C/man3/wordexp.3:164
2635 msgid ""
2636 "Illegal occurrence of newline or one of |, &, ;, E<lt>, E<gt>, (, ), {, }."
2637 msgstr ""
2638 "改行または |, &, ;, E<lt>, E<gt>, (, ), {, } のうちの 1 つが不正に出現した。"
2639
2640 #. type: TP
2641 #: build/C/man3/wordexp.3:164
2642 #, no-wrap
2643 msgid "B<WRDE_BADVAL>"
2644 msgstr "B<WRDE_BADVAL>"
2645
2646 #. type: Plain text
2647 #: build/C/man3/wordexp.3:170
2648 msgid ""
2649 "An undefined shell variable was referenced, and the B<WRDE_UNDEF> flag told "
2650 "us to consider this an error."
2651 msgstr ""
2652 "未定義のシェル変数が参照され、かつ B<WRDE_UNDEF> フラグでこれをエラーとして扱"
2653 "うように指示されている。"
2654
2655 #. type: TP
2656 #: build/C/man3/wordexp.3:170
2657 #, no-wrap
2658 msgid "B<WRDE_CMDSUB>"
2659 msgstr "B<WRDE_CMDSUB>"
2660
2661 #. type: Plain text
2662 #: build/C/man3/wordexp.3:175
2663 msgid ""
2664 "Command substitution occurred, and the B<WRDE_NOCMD> flag told us to "
2665 "consider this an error."
2666 msgstr ""
2667 "コマンド置換が起こり、かつ B<WRDE_NOCMD> フラグでこれをエラーとして扱うように"
2668 "指示されている。"
2669
2670 #. type: TP
2671 #: build/C/man3/wordexp.3:175
2672 #, no-wrap
2673 msgid "B<WRDE_NOSPACE>"
2674 msgstr "B<WRDE_NOSPACE>"
2675
2676 #. type: Plain text
2677 #: build/C/man3/wordexp.3:178
2678 msgid "Out of memory."
2679 msgstr "メモリが足りない。"
2680
2681 #. type: TP
2682 #: build/C/man3/wordexp.3:178
2683 #, no-wrap
2684 msgid "B<WRDE_SYNTAX>"
2685 msgstr "B<WRDE_SYNTAX>"
2686
2687 #. type: Plain text
2688 #: build/C/man3/wordexp.3:182
2689 msgid "Shell syntax error, such as unbalanced parentheses or unmatched quotes."
2690 msgstr ""
2691 "対応する括弧がない、クォートが合致しないといった、 シェルの書式エラー。"
2692
2693 #. type: SH
2694 #: build/C/man3/wordexp.3:182
2695 #, no-wrap
2696 msgid "VERSIONS"
2697 msgstr "バージョン"
2698
2699 #. type: Plain text
2700 #: build/C/man3/wordexp.3:187
2701 msgid ""
2702 "B<wordexp>()  and B<wordfree>()  are provided in glibc since version 2.1."
2703 msgstr ""
2704 "B<wordexp>()  と B<wordfree>()  は、バージョン 2.1 以降の glibc で提供されて"
2705 "いる。"
2706
2707 #. type: Plain text
2708 #: build/C/man3/wordexp.3:192
2709 msgid ""
2710 "The output of the following example program is approximately that of \"ls [a-"
2711 "c]*.c\"."
2712 msgstr ""
2713 "以下のサンプルプログラムの出力はだいたい \"ls [a-c]*.c\" と同じになる。"
2714
2715 #. type: Plain text
2716 #: build/C/man3/wordexp.3:197
2717 #, no-wrap
2718 msgid ""
2719 "#include E<lt>stdio.hE<gt>\n"
2720 "#include E<lt>stdlib.hE<gt>\n"
2721 "#include E<lt>wordexp.hE<gt>\n"
2722 msgstr ""
2723 "#include E<lt>stdio.hE<gt>\n"
2724 "#include E<lt>stdlib.hE<gt>\n"
2725 "#include E<lt>wordexp.hE<gt>\n"
2726
2727 #. type: Plain text
2728 #: build/C/man3/wordexp.3:204
2729 #, no-wrap
2730 msgid ""
2731 "int\n"
2732 "main(int argc, char **argv)\n"
2733 "{\n"
2734 "    wordexp_t p;\n"
2735 "    char **w;\n"
2736 "    int i;\n"
2737 msgstr ""
2738 "int\n"
2739 "main(int argc, char **argv)\n"
2740 "{\n"
2741 "    wordexp_t p;\n"
2742 "    char **w;\n"
2743 "    int i;\n"
2744
2745 #. type: Plain text
2746 #: build/C/man3/wordexp.3:212
2747 #, no-wrap
2748 msgid ""
2749 "    wordexp(\"[a-c]*.c\", &p, 0);\n"
2750 "    w = p.we_wordv;\n"
2751 "    for (i = 0; i E<lt> p.we_wordc; i++)\n"
2752 "        printf(\"%s\\en\", w[i]);\n"
2753 "    wordfree(&p);\n"
2754 "    exit(EXIT_SUCCESS);\n"
2755 "}\n"
2756 msgstr ""
2757 "    wordexp(\"[a-c]*.c\", &p, 0);\n"
2758 "    w = p.we_wordv;\n"
2759 "    for (i = 0; i E<lt> p.we_wordc; i++)\n"
2760 "        printf(\"%s\\en\", w[i]);\n"
2761 "    wordfree(&p);\n"
2762 "    exit(EXIT_SUCCESS);\n"
2763 "}\n"
2764
2765 #. type: Plain text
2766 #: build/C/man3/wordexp.3:216
2767 msgid "B<fnmatch>(3), B<glob>(3)"
2768 msgstr "B<fnmatch>(3), B<glob>(3)"