velocity-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Geir Magnusson Jr." <>
Subject Re: Am I missing something simple? calling java.lang.String.replace(c har, char)
Date Wed, 03 Apr 2002 15:10:28 GMT
On 4/3/02 9:57 AM, "Streithorst, Kip" <> wrote:

> I am trying to call java.lang.String.replace(char oldChar, char newChar)
> in my velocity template using
> $thestring.replace('\\', '/')
> But this doesn't seem to work.

Beautiful problem :)

There are a whole bunch of things wrong here.  First, '<stuff>' is a string,
not a char.  The diff between "" and '' is that '' isn't interpolated.

#set($foo = 'hello')
#set($bar = "$foo")
#set($woogie = '$foo')



We have no natural way to specify a char in Velocity.  That's why the method
isn't getting called.

So you can resort to a horror show like :

#set($foo = "hello?")
#set($thingy = "?!")
#set($a = $thingy.charAt(0))
#set($b = $thingy.charAt(1))
$foo.replace($a, $b)

And that works.

I have no immediate ideas on what to do about the fact we have no way of
representing a char...

Geir Magnusson Jr.                           
System and Software Consulting
Somebody has to do something, and it's just incredibly pathetic that it has
to be us.  - Jerry Garcia

To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message