File: unquotemeta

package info (click to toggle)
libregexp-assemble-perl 0.38-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 608 kB
  • sloc: perl: 2,272; makefile: 8
file content (22 lines) | stat: -rw-r--r-- 395 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#! /usr/bin/perl
#
# unquotemeta - how to fix up quotemeta
# 
# part of the Regexp::Assemble module
# David Landgren, copyright (c) 2005

use strict;

for my $ord( 0 .. 255 ) {
    my $ch = chr($ord);
    my $qm = quotemeta($ch);
    my $fix = fixup($qm);

    print "o=$ord c=$ch q=$qm f=$fix\n";
}

sub fixup {
    my $ch = shift;
    $ch =~ s/^\\([^-\w$()*+.\/?@\[\\\]^{|}])$/$1/;
    $ch;
}