#!/bin/sh set -e out=$GOROOT/src/pkg/regexp/syntax/doc.go cp syntax.txt $out sam -d $out <<'!' ,x g/NOT SUPPORTED/d /^Unicode character class/,$d ,s/[«»]//g ,x g/^Possessive repetitions:/d ,x g/\\C/d ,x g/Flag syntax/d ,s/.=(true|false)/flag &/g ,s/^Flags:/ Flag syntax is xyz (set) or -xyz (clear) or xy-z (set xy, clear z). The flags are:\n/ ,s/\n\n\n+/\n\n/g ,x/(^.* .*\n)+/ | awk -F' ' '{printf(" %-14s %s\n", $1, $2)}' 1,2c // Copyright 2012 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // DO NOT EDIT. This file is generated by mksyntaxgo from the RE2 distribution. /* Package syntax parses regular expressions into parse trees and compiles parse trees into programs. Most clients of regular expressions will use the facilities of package regexp (such as Compile and Match) instead of this package. Syntax The regular expression syntax understood by this package when parsing with the Perl flag is as follows. Parts of the syntax can be disabled by passing alternate flags to Parse. . $a */ package syntax . w q !