Article View: be.comp.programming
Article #1913Re: Perl
From: John Bokma
Date: Thu, 04 Nov 2004 16:30
Date: Thu, 04 Nov 2004 16:30
65 lines
3339 bytes
3339 bytes
Philip Paeps wrote:
> John Bokma <postmaster@castleamber.com> wrote:
>> Nitro wrote:
>> > On Wed, 03 Nov 2004 16:55:55 +0000, John Bokma wrote:
>> > > Nitro wrote:
>> > > > On Wed, 03 Nov 2004 09:57:35 +0000, Philip Paeps wrote:
>> > > > > Sure. Maar is het niet makkelijker om gewoon je string te
>> > > > > choppen?
>> > > >
>> > > > IDD Chop, chop deed het merci
>> > >
>> > > Gebruik *geen* chop, maar chomp
>> >
>> > haalt chomp ook de \r eraf?
>>
>> Hangt van het platform af :-)
>
> Precies daarom stelde ik chop voor en niet chomp.
Maar die haalt alleen het *laatste* teken er af. Dus als er een einde
regel teken is, werkt chop gelijk aan chomp, maar als dat er niet is,
doet chop iets vervelender, het haalt het *laatste* teken weg...
> Het is een beetje
> minder veilig als je de data die je erin pompt niet in de gaten houdt,
> maar je bent wel zeker dat er effectief het laatste karakter afgaat.
Yup, en als er dus geen einde regel teken is, mis je een belangrijk
teken.... chop gewoon niet gebruiken.
>> chomp -> haalt een newline[1] weg, als die er is.
>
> s/newline/end of line/, sommige bizarre platformen vinden het nodig om
> \r\n als EOL te gebruiken, andere bijna even bizarre platformen
> gebruiken \r, en dan zijn er nog een paar really really weird systems
> die nog iets compleet anders gebruiken.
En Perl doet het goed als de bestanden op hetzelfde platform aangemaakt
zijn.
> Daarom hou ik ook meer van het C paradigma van \0-terminated character
> arrays.
Huh? Oh, maar dat is hoe het intern wordt opgeslagen. Bij Perl *hoef* je
daar gelukkig normaal geen rekening mee te houden ;-)
> Iets meer nadenken, maar geen verrassingen bij het porten naar
> weirdo systemen met vreemde ideeοΏ½n over EOL :-)
Zodra je met tekst aan de slag gaat in combinatie met C zal je zeer
zeker wel rekening met de diverse einde regel tekens moeten houden.
>> chomp is altijd te verkiezen boven chop als het gaat om de newline
>> weg te halen.
>
> Daar ben ik het mee eens.
:-)
--
John Bokma
Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html
Technical Details
Message-ID:
<Xns95976AF20B218castleamber@130.133.1.4>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!not-for-mailReferences:
<pan.2004.11.03.09.47.35.710803@skynet.be> <4188ab8f$0$43451$e4fe514c@news.xs4all.nl> <pan.2004.11.03.14.59.40.271302@skynet.be> <Xns95966F330BE11castleamber@130.133.1.4> <pan.2004.11.03.19.54.05.291784@skynet.be> <Xns9596A205FC3FCcastleamber@130.133.1.4> <4189d76b$0$568$e4fe514c@news.xs4all.nl>Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,f11ad0c563cf4be6
X-Google-Attributes: gidfcea4,public
X-Google-Language: DUTCH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!not-for-mail
From: John Bokma <postmaster@castleamber.com>
Newsgroups: be.comp.programming
Subject: Re: Perl
Date: 4 Nov 2004 16:30:50 GMT
Organization: Castle Amber - software development
Lines: 65
Message-ID: <Xns95976AF20B218castleamber@130.133.1.4>
References: <pan.2004.11.03.09.47.35.710803@skynet.be> <4188ab8f$0$43451$e4fe514c@news.xs4all.nl> <pan.2004.11.03.14.59.40.271302@skynet.be> <Xns95966F330BE11castleamber@130.133.1.4> <pan.2004.11.03.19.54.05.291784@skynet.be> <Xns9596A205FC3FCcastleamber@130.133.1.4> <4189d76b$0$568$e4fe514c@news.xs4all.nl>
X-Trace: news.uni-berlin.de uOD8UA7jist+e4w0zzWtvwY9bOzt+XXz6WyjEId9tKwRp+NC2A
User-Agent: Xnews/5.04.25
X-Face: $7h&5K*ZL9*ZQ\6Hco2"V?1dD*C<ab^>zlws[S%i0b,@gKk|[,)Y-<hk143{.Ov"x{({zo( l,N\m`-_^nJfVQdEyt+-uAP^7WG]5mHj9&::7X-qK;Yv;xmRvNWQR"_igw+cr5WMj;6:zlj<R80Ei@ $gGWq&*{FL*kC*a