; ; SABNF grammar for parsing out the replacement string parameters ; rule = *(*any-other [(escape / match / prefix/ suffix/ xname / error)]) error = "$" any-other escape = "$$" match = "$&" prefix = "$`" suffix = "$'" xname = "${" name "}" name = alpha *(alpha/digit/%d45/%d95) alpha = %d97-122 / %d65-90 digit = %d48-57 any-other = %x20-23 / %x25-FFFF / %xA-D