X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=doc%2Fpcrs.3;h=372073d9f7f34529f49036791809e8a0184f24d7;hb=977668fbc148a4a991c9bc4825f02fd6ebb89055;hp=59e0f2271d5925e3d9e98d5523624c2827c4af67;hpb=72081f829de368392d04076728f8c991178c0080;p=privoxy.git diff --git a/doc/pcrs.3 b/doc/pcrs.3 index 59e0f227..372073d9 100644 --- a/doc/pcrs.3 +++ b/doc/pcrs.3 @@ -28,7 +28,7 @@ pcrs - Perl-compatible regular substitution. .B "#include " .PP .br -.BI "pcrs_job *pcrs_compile(const char *" pattern "," +.BI "pcrs_job *pcrs_compile(const char *" pattern "," .ti +5n .BI "const char *" substitute ", const char *" options , .ti +5n @@ -68,7 +68,7 @@ pcrs - Perl-compatible regular substitution. The .SM PCRS -library is a supplement to the +library is a supplement to the .SB PCRE(3) library that implements .RB "regular expression based substitution, like provided by " Perl(1) "'s 's'" @@ -77,10 +77,10 @@ differences (see below). In a first step, the information on a substitution, i.e. the pattern, the substitute and the options are compiled from Perl syntax to an internal form -.RB "called " pcrs_job " by using either the " pcrs_compile() " or " +.RB "called " pcrs_job " by using either the " pcrs_compile() " or " .BR pcrs_compile_command() " functions." -Once the job is compiled, it can be used on subjects, which are arbitrary +Once the job is compiled, it can be used on subjects, which are arbitrary memory areas containing string or binary data, by calling .BR pcrs_execute() ". Jobs can be chained to joblists and whole" .RB "joblists can be applied to a subject using " pcrs_execute_list() . @@ -104,7 +104,7 @@ There are also convenience functions for freeing the jobs and for errno-to-strin .RB "follows the '" "s" "' will be used as the delimiter. Patterns or substitutes" that contain the delimiter need to quote it: \fBs/th\\/is/th\\/at/\fR -.RB "will replace " "th/is" " by " "th/at" " and can be written more simply as" +.RB "will replace " "th/is" " by " "th/at" " and can be written more simply as" .BR "s|th/is|th/at|" "." .IR "pattern" ", " "substitute" ", " "options" " and " "command" " must be" @@ -123,7 +123,7 @@ On success, both functions return a pointer to the compiled job. .SS Substitutes .RI "The " "substitute" " uses" .RB "Perl syntax as documented in the " "perlre(1)" " manual page, with" -some exceptions: +some exceptions: Most notably and evidently, since .SM PCRS @@ -147,9 +147,9 @@ refers to what the last capturing subpattern matched. if a global substitution previously matched. .PP -Perl4-style references to subpattern matches of the form +Perl4-style references to subpattern matches of the form \fB\\1, \\2, ...\fR -.RB "which only exist in Perl5 for backwards compatibility, are " "not" +.RB "which only exist in Perl5 for backwards compatibility, are " "not" supported. Also, since the substitute is a double-quoted string in Perl, you @@ -269,7 +269,7 @@ is set. .SS String subjects -If your +If your .SS Return value and diagnostics @@ -298,7 +298,7 @@ contains pointers to other dynamically allocated structures. Chaining the jobs is up to you, but once you have built a linked list of jobs, .RI "you can execute a whole " joblist " on a given subject by" .RB "a single call to " pcrs_execute_list() ", which will sequentially traverse" -.RB "the linked list until it reaches a " NULL " pointer, and call " pcrs_execute() +.RB "the linked list until it reaches a " NULL " pointer, and call " pcrs_execute() .RI "for each job it encounters, feeding the " result " and " result_length " of each" .RI "call into the next as the " subject " and " subject_length ". As in the single" .RI "job case, the original " subject " remains untouched, but all interim " result "s" @@ -335,22 +335,22 @@ Under normal circumstances, it can take the following values: While compiling the pattern, .SM PCRE ran out of memory. -.TP +.TP .B PCRS_ERR_NOMEM While compiling the job, .SM PCRS ran out of memory. -.TP +.TP .B PCRS_ERR_CMDSYNTAX .BR pcrs_compile_command() " didn't find four tokens while parsing the" .IR command . -.TP +.TP .B PCRS_ERR_STUDY A .SM PCRE .RB "error occured while studying the compiled pattern. Since " pcre_study() only provides textual diagnostic information, the details are lost. -.TP +.TP .B PCRS_WARN_BADREF .RI "The " substitute " contains a reference to a capturing subpattern that" .RI "has a higher index than the number of capturing subpatterns in the " pattern @@ -368,12 +368,12 @@ While matching the pattern, ran out of memory. This can only happen if there are more than 33 backrefrences .RI "in the " pattern "(!)" .BR and " memory is too tight to extend storage for more." -.TP +.TP .B PCRS_ERR_NOMEM While executing the job, .SM PCRS ran out of memory. -.TP +.TP .B PCRS_ERR_BADJOB .RB "The " pcrs_job "* passed to " pcrs_execute " was NULL, or the" .RB "job is bogus (it contains " NULL " pointers to the compiled @@ -469,7 +469,7 @@ and should be considered high risk. .SH HISTORY .SM PCRS was originally written for the Privoxy project -(http://www.privoxy.org/). +(https://www.privoxy.org/). .SH SEE ALSO .B PCRE(3), perl(1), perlre(1) @@ -477,12 +477,15 @@ was originally written for the Privoxy project .SH AUTHOR .SM PCRS -is Copyright 2000 - 2003 by Andreas Oesterhelt and is -licensed under the terms of the GNU Lesser General Public License (LGPL), -version 2.1, which should be included in this distribution, with the exception -that the permission to replace that license with the GNU General Public -License (GPL) given in section 3 is restricted to version 2 of the GPL. - -If it is missing from this distribution, the LGPL can be obtained from -http://www.gnu.org/licenses/lgpl.html or by mail: Write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +is Copyright 2000 - 2003 by Andreas Oesterhelt +and is free software. + +You can redistribute it and/or modify it under the terms of the GNU +General Public License as published by the Free Software Foundation; +either version 2 of the License, or (at your option) any later +version. + +The GNU General Public License should be included with this file. +If not, you can view it at https://www.gnu.org/copyleft/gpl.html or write +to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA.