X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=strings.lisp;h=f933fe824033312ea1a618cb6c56f889f2b1c36c;hb=4a5b626f01db51b02f969adb33ddad6aa9ee303a;hp=046b357db1739e5ba6c64bd152952a2f8d4dcec6;hpb=174fa156fb8e0c29acec43058a155a99f188e860;p=kmrcl.git diff --git a/strings.lisp b/strings.lisp index 046b357..f933fe8 100644 --- a/strings.lisp +++ b/strings.lisp @@ -1,4 +1,4 @@ -<;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*- +;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*- ;;;; ************************************************************************* ;;;; FILE IDENTIFICATION ;;;; @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: strings.lisp,v 1.31 2003/05/16 12:50:05 kevin Exp $ +;;;; $Id: strings.lisp,v 1.35 2003/06/06 21:59:30 kevin Exp $ ;;;; ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg ;;;; @@ -17,7 +17,7 @@ ;;;; ************************************************************************* -(in-package :kmrcl) +(in-package #:kmrcl) ;;; Strings @@ -38,13 +38,11 @@ (i 0 (1+ i))) ((= i len) n-words) (declare (fixnum i)) - (let ((ch (schar str i))) - (declare (character ch)) - (if (alphanumericp ch) - (unless in-word - (incf n-words) - (setq in-word t)) - (setq in-word nil)))))) + (if (alphanumericp (schar str i)) + (unless in-word + (incf n-words) + (setq in-word t)) + (setq in-word nil))))) ;; From Larry Hunter with modifications (defun position-char (char string start max) @@ -78,8 +76,8 @@ (setq pos (1+ end)))) -(defun list-to-delimited-string (list &optional (separator #\space)) - (format nil (format nil "~~{~~A~~^~A~~}" separator) list)) +(defun list-to-delimited-string (list &optional (separator " ")) + (format nil (concatenate 'string "~{~A~^" (string separator) "~}") list)) (defun string-invert (str) "Invert case of a string" @@ -203,9 +201,7 @@ list of characters and replacement strings." (defun escape-xml-string (string) "Escape invalid XML characters" - (substitute-chars-strings - string '((#\& . "&") (#\> . ">") (#\< . "<") (#\" . """)))) - + (substitute-chars-strings string '((#\& . "&") (#\< . "<")))) (defun make-usb8-array (len) (make-array len :adjustable nil @@ -235,7 +231,8 @@ list of characters and replacement strings." vec)) (defun concat-separated-strings (separator &rest lists) - (format nil (format nil "~~{~~A~~^~A~~}" separator) (append-sublists lists))) + (format nil (concatenate 'string "~{~A~^" (string separator) "~}") + (append-sublists lists))) (defun only-null-list-elements-p (lst) (or (null lst) (every #'null lst)))