Strtol

Score: 152.53 (pass)

#!perl -pal
/b|mi|ho/and$y=12-3*$+[0]or$z+=/te|lv/.(/../+index onthfisenielztwfosiei,$&)%0xc.e.(($y+=y~d~~)+/y/)for reverse@F;$_=$z;{s~\w+(?=\w{3})~$&,~&&redo}

Score: 153.54 (pass)

#!perl -pal
/b|mi|ho/and$y=12-3*$+[0]or$y+=y~d~~,$z+=/te|lv/.(/../+index onthfisenielztwfosiei,$&)%0xc.e.($y+/y/)for reverse@F;$_=$z;{s~\w+(?=\w{3})~$&,~&&redo}

Score: 155.53 (pass)

#!perl -pl
/b|mi|ho/and$y=4-$+[0]or$z+=/te|lv/.(/../+index onthfisenielztwfosiei,$&)%12 .e.(y~dy~~+3*$y)for reverse/(?:\w| h)+/g;$_=$z;{s~\d+(?=\d{3})~$&,~&&redo}

Score: 159.52 (pass)

#!perl -pl
for$z(@z=qw~b m tho $~){s~(.+)$z~~;$z+=/te|lv/.(/../+index onthfisenielztwfosiei,$&)%12 .e.y~dy~~for$1=~/(?:\w| h)+/g}$_=sprintf',%03d'x4,@z;s~[0,]*(?!$)~~

Score: 162.52 (pass)

#!perl -pl
for$z(@z=qw~b m tho $~){s~(.+)$z~~;$z+=/te|lv/.0+(/../+index onthfisenielztwfosiei,$&)%12*10**y~dy~~for$1=~/(?:\w| h)+/g}$_=sprintf',%03d'x4,@z;s~[0,]*(?!$)~~

Score: 165.50 (pass)

#!perl -pl
for$z(@y=qw~b m tho $~){s~(.*)$z~~;$z+=(/te|lv/*20+/../+index'~ontwthfofisiseeini~~el',$&)/2*10**y~dy~~for$1=~/(?:\w| h)+/g}$_=sprintf",%03d"x4,@y;s~[0,]*(?!$)~~

Score: 166.49 (pass)

I had nickel in one of my goes, too :)

#!perl -pl
for$t(qw/b m tho ,/){s/(.*?)$t//;$s=1000;$s+=/te|lv/*10+(/../+index"Dontwthfofisiseeinickel",$&)/2*10**y/dy//for$1=~/(?:\w| h)+/g;$s=~s/1/,/;$_.=$s}s/[0,]*(.)/$1/

Score: 176.47 (pass)

#!perl -pl
for$t(qw/b m tho ,/){s/(.*?)$t//;$s=1000;$s+=(/te/*20+/../+index"Dontwthfofisiseeinickel",$&)/2*(/lv/*5+/d/*99+/y/*9+1)for$1=~/(?:\w| h)+/g;$s=~s/1/,/;$_.=$s}s/[0,]*(?!$)//

Score: 178.49 (fail)

#!perl -pl
s/ h/h/g;s/lv|te/ ck/;for$t(qw/b m tho ,/){s/(.*?)$t//;$s=1000;$s+=(/../,1+index"Dontwthfofisiseeinickel",$&)/2*(/d/*99+/y/*9+1)for$1=~/\w+/g;$s=~s/1/,/;$_.=$s}s/[0,]*(?!$)//

Score: 179.49 (pass)

#!perl -pl
s/ h/h/g;s/lv|te/ ck/;for$t(qw/b m tho ,/){s/(.*?)$t//;$s=1000;$s+=(/../,1+index"Dontwthfofisiseeinickel",$&)/2*(/hu/*99+/y/*9+1)for$1=~/\w+/g;$s=~s/1/,/;$_.=$s}s/[0,]*(?!$)//

Score: 179.49 (pass)

I left out a /g on my previous submission; it'd fail for "twelve thousand twelve".

#!perl -pl
s/ h/h/g;s/lv|te/ ck/g;for$t(qw/b m tho ,/){s/(.*?)$t//;$s=1000;$s+=(/../,1+index"Dontwthfofisiseeinickel",$&)/2*(/d/*99+/y/*9+1)for$1=~/\w+/g;$s=~s/1/,/;$_.=$s}s/[0,]*(?!$)//

Score: 190.50 (pass)

#!perl -pl
sub f{/../,(1+index"zontwthfofisiseeiniteel",$&)/2}s/ h/h/g;for$t(qw/b m tho ,/){s/(.*?)$t//;$s=1000;$s+=(/hu/?100*f:/y/?10*f:/lv|een/*10+f)for$1=~/\w+/g;$s=~s/./,/;$_.=$s}s/[0,]*(?!$)//