[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Regex to transform java code to ecma script

pondus

10/30/2006 5:26:00 AM

Hi,

I was hoping someone could provide me with a better way to accomplish
(preferrably in one line) the following simple task:

# typical method declaration in a java interface
code = "public void myFunction(String foo);"

# needs to be transformed into the following e.g. Actionscript 2.0
(ECMA)
# public function myFunction(foo:String):Void;

java = code.gsub(/(public) (.*?) (.*).*(;)/) { $1 + ' function ' + $3
+ ':' + $2.capitalize + ";" }
puts code.gsub(/\((String) (foo)\)/,'(\2:\1)')



It works, but it's not very slick..

Thanks!

Peder :)

2 Answers

pondus

10/30/2006 5:30:00 AM

0

Sorry, my mistake..cut and paste is dangerous. The code should read:

code = "public void myFunction(String foo);"

code = code.gsub(/(public) (.*?) (.*).*(;)/) { $1 + ' function ' + $3
+ ':' + $2.capitalize + ";" }

puts code.gsub(/\((String) (foo)\)/,'(\2:\1)')

Thanks again,

Peder :)

pondus wrote:
> Hi,
>
> I was hoping someone could provide me with a better way to accomplish
> (preferrably in one line) the following simple task:
>
> # typical method declaration in a java interface
> code = "public void myFunction(String foo);"
>
> # needs to be transformed into the following e.g. Actionscript 2.0
> (ECMA)
> # public function myFunction(foo:String):Void;
>
> java = code.gsub(/(public) (.*?) (.*).*(;)/) { $1 + ' function ' + $3
> + ':' + $2.capitalize + ";" }
> puts code.gsub(/\((String) (foo)\)/,'(\2:\1)')
>
>

>
> It works, but it's not very slick..
>
> Thanks!
>
> Peder :)

Giles Bowkett

10/31/2006 4:41:00 AM

0

If you can convert Java to ActionScript with a one-line regex, that's
pretty good.

On 10/29/06, pondus <pjakobsen@gmail.com> wrote:
> Sorry, my mistake..cut and paste is dangerous. The code should read:
>
> code = "public void myFunction(String foo);"
>
> code = code.gsub(/(public) (.*?) (.*).*(;)/) { $1 + ' function ' + $3
> + ':' + $2.capitalize + ";" }
>
> puts code.gsub(/\((String) (foo)\)/,'(\2:\1)')
>
> Thanks again,
>
> Peder :)
>
> pondus wrote:
> > Hi,
> >
> > I was hoping someone could provide me with a better way to accomplish
> > (preferrably in one line) the following simple task:
> >
> > # typical method declaration in a java interface
> > code = "public void myFunction(String foo);"
> >
> > # needs to be transformed into the following e.g. Actionscript 2.0
> > (ECMA)
> > # public function myFunction(foo:String):Void;
> >
> > java = code.gsub(/(public) (.*?) (.*).*(;)/) { $1 + ' function ' + $3
> > + ':' + $2.capitalize + ";" }
> > puts code.gsub(/\((String) (foo)\)/,'(\2:\1)')
> >
> >
>
> >
> > It works, but it's not very slick..
> >
> > Thanks!
> >
> > Peder :)
>
>
>


--
Giles Bowkett
http://www.gilesg...