How to compare strings against static char arrays?

Jonathan M Davis jmdavisProg at gmx.com
Tue Apr 26 18:58:11 PDT 2011


> "Andrej Mitrovic" <none at none.none> wrote in message
> news:ip7pqt$29hc$1 at digitalmars.com...
> 
> > Nick Sabalausky Wrote:
> >> "Andrej Mitrovic" <none at none.none> wrote in message
> >> news:ip7phj$28v5$1 at digitalmars.com...
> >> 
> >> > E.g.:
> >> > 
> >> > void main()
> >> > {
> >> > 
> >> >    char[10] blue = "blue      ";
> >> >    assert(blue == "blue");
> >> > 
> >> > }
> >> > 
> >> > Obviously these two are different, but what function can I use to
> >> > compare
> >> > strings in situations where whitespace is the delimiter?
> >> 
> >> assert(strip(blue) == "blue");
> >> 
> >> Is that what you need or did I misunderstand?
> > 
> > Yup. blue[].strip (slice is needed).
> > 
> > And here I was desperately trying to find the trim() function. Thanks!
> 
> Yea, I keep trying to do trim(), too. Hard habit to break :)

That's one of those functions that is quite common among many languages but is 
often not called quite the same thing. So, if you're used to a particular 
name, and the language chose another, then you're constantly thrown off by it 
until you use it enough that it sticks. But if they'd picked the name that 
you're used to, then someone else would have been constantly thrown off 
instead, since they were used to languages/libraries that used the first name. 
So, you can't really win.

- Jonathan M Davis


More information about the Digitalmars-d-learn mailing list