Function: rng-uri-unescape-unibyte-replace
rng-uri-unescape-unibyte-replace is a byte-compiled function defined
in rng-uri.el.gz.
Signature
(rng-uri-unescape-unibyte-replace STR NEXT-MATCH-INDEX)
Source Code
;; Defined in /usr/src/emacs/lisp/nxml/rng-uri.el.gz
(defun rng-uri-unescape-unibyte-replace (str next-match-index)
(replace-regexp-in-string
"%[0-7][[:xdigit:]]\\|[^%]"
(lambda (match)
(if (string= match "*")
(let ((n next-match-index))
(setq next-match-index (1+ n))
(format "\\%s" n))
(let ((ch (if (= (length match) 1)
(aref match 0)
(string-to-number (substring match 1)
16))))
(if (eq ch ?\\)
(string ?\\ ?\\)
(string ch)))))
str
t
t))