aboutsummaryrefslogtreecommitdiff
path: root/bpeg.c
diff options
context:
space:
mode:
Diffstat (limited to 'bpeg.c')
-rw-r--r--bpeg.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/bpeg.c b/bpeg.c
index 04e23d2..1ad576d 100644
--- a/bpeg.c
+++ b/bpeg.c
@@ -110,11 +110,16 @@ int main(int argc, char *argv[])
add_def(g, pattern, "pattern", pat);
- const char *grammar = (
- "find-all = *(matching-line / {&&(\\n/$$)=>});\n"
- "matching-line = +&@pattern *. $ ?\\n;"
+ if (replacement) {
+ load_grammar(g,
+ "replace-all = *&&@pattern &&$$;\n"
+ );
+ } else {
+ load_grammar(g,
+ "find-all = *(matching-line / {&&(\\n/$$)=>});\n"
+ "matching-line = +&@pattern *. $ ?\\n;"
);
- load_grammar(g, grammar);
+ }
}
if (verbose) {