Received: from mx0.gmx.net (mx0.gmx.net [213.165.64.100]) by h1439878.stratoserver.net (8.14.2/8.14.2/Debian-2build1) with SMTP id p9GFFAEu024260 for ; Sun, 16 Oct 2011 17:15:11 +0200 Received: (qmail 1302 invoked by alias); 16 Oct 2011 15:15:05 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 16 Oct 2011 15:15:05 -0000 Received: from relay2.uni-heidelberg.de (EHLO relay2.uni-heidelberg.de) [129.206.210.211] by mx0.gmx.net (mx020) with SMTP; 16 Oct 2011 17:15:05 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p9GFCm4P003749 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 16 Oct 2011 17:12:48 +0200 Received: from listserv.uni-heidelberg.de (localhost.localdomain [127.0.0.1]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p9GCVE3J010512; Sun, 16 Oct 2011 17:12:48 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 1783953 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Sun, 16 Oct 2011 17:12:48 +0200 Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.210.211]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p9GFClZJ007858 for ; Sun, 16 Oct 2011 17:12:48 +0200 Received: from anchor-post-1.mail.demon.net (anchor-post-1.mail.demon.net [195.173.77.132]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p9GFCZAX003401 for ; Sun, 16 Oct 2011 17:12:39 +0200 Received: from morningstar2.demon.co.uk ([80.176.134.7] helo=palladium.local) by anchor-post-1.mail.demon.net with esmtp (Exim 4.69) id 1RFSOB-0002hI-gQ for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Sun, 16 Oct 2011 15:12:35 +0000 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1 MIME-Version: 1.0 References: X-Enigmail-Version: 1.3.2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Message-ID: <4E9AF462.1010401@morningstar2.co.uk> Date: Sun, 16 Oct 2011 16:12:34 +0100 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Joseph Wright Subject: Re: Strings, and regular expressions To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (Sender is in whitelist: joseph.wright@MORNINGSTAR2.CO.UK); Detail=5D7Q89H36p4L00VTXC6D4q0N+AH0PUCnBi0P5cROEGjO+pG7NAH/K+tf9SrVFtpLrKONl 2T9EL4W4U4jgzLbnCcGpk1z/zwmKT/K1fv3lD0=V1; X-Resent-By: Forwarder X-Resent-For: rainer.schoepf@gmx.net X-Resent-To: rainer@rainer-schoepf.de Status: R X-Status: X-Keywords: X-UID: 6948 On 10/10/2011 16:07, Bruno Le Floch wrote: > The l3str module provides functions to get the length of a string, > extract substrings or individual characters, testing for string > equality (the curent \str_if_eq:nnTF). Some support for encodings is > provided: percent encoding, conversion from utf-8 to a string of > bytes, and most functions of Heiko Oberdiek's pdfescape package. >hly welcome. Some comments having read the code and documentation. I don't like the name in \str_from_to:nnn - it sounds like a copy function. What's wrong with \str_substr:nnn or just \str_sub:nnn? In the same function, the indexing is described as "\meta{start index} (inclusive) and \meta{end index} (exclusive)". This seems very odd to me - I'd expect \str_from_to:nnn { abcdef } { 1 } { 4 } to leave "bcde" in the input stream. What's the reasoning for "\str_if_contains_char:NN" rather than just "\str_if_in:NN"? I see you have a number of "UTF_viii" functions. I can see that you are covering any confusion with UTF-16, but would simply "UTF" be better? I also saw that the docs mentioned "\str_if_UTF_viii:N", which does not exist. I've removed it, as I think the docs and the code should match as much as possible. -- Joseph Wright