string-upcase, string-downcase, string-capitalize, nstring-upcase, nstring-downcase, nstring-capitalize (original) (raw)

ANSI Common Lisp 16 Strings 16.2 Dictionary of Strings

16.2.8 string-upcase, string-downcase, string-capitalize, nstring-upcase, nstring-downcase, nstring-capitalize Function

Syntax:

Arguments and Values:

string - a string designator. For nstring-upcase,nstring-downcase, and nstring-capitalize, the string designator must be a string.

start, end - bounding index designators of string. The defaults for start and end are 0 and nil, respectively.

cased-string - a string.

Description:

string-upcase, string-downcase, string-capitalize,nstring-upcase, nstring-downcase, nstring-capitalizechange the case of the subsequence of string bounded by start and _end_as follows:

For string-upcase, string-downcase, and string-capitalize,string is not modified. However, if no characters in _string_require conversion, the result may be either string or a copy of it, at the implementation's discretion.

Examples:

(string-upcase "abcde") "ABCDE" (string-upcase "Dr. Livingston, I presume?") "DR. LIVINGSTON, I PRESUME?" (string-upcase "Dr. Livingston, I presume?" :start 6 :end 10) "Dr. LiVINGston, I presume?" (string-downcase "Dr. Livingston, I presume?") "dr. livingston, i presume?"

(string-capitalize "elm 13c arthur;fig don't") "Elm 13c Arthur;Fig Don'T" (string-capitalize " hello ") " Hello " (string-capitalize "occlUDeD cASEmenTs FOreSTAll iNADVertent DEFenestraTION") "Occluded Casements Forestall Inadvertent Defenestration" (string-capitalize 'kludgy-hash-search) "Kludgy-Hash-Search" (string-capitalize "DON'T!") "Don'T!" ;not "Don't!" (string-capitalize "pipe 13a, foo16c") "Pipe 13a, Foo16c"

(setq str (copy-seq "0123ABCD890a")) "0123ABCD890a" (nstring-downcase str :start 5 :end 7) "0123AbcD890a" str "0123AbcD890a"

Side Effects:

nstring-upcase,nstring-downcase, and nstring-capitalize modify string as appropriate rather than constructing a new string.

See Also:

char-upcase, char-downcase

Notes:

The result is always of the same length as string.

Allegro CL Implementation Details:

None.