Greetings,
I want to convert a String with parenthesis and dollar sign to a Number or Float.
'($1,925.46)’ asNumber
Is there something out of the box that does this, or do I have to write it myself, character by character?
Should I use a ReadStream?
Sincerely,
Joe.
Hi Joe,
If you know the format is consistent and you don't really need much error handling then something like this would work
('($1,925.46)' reject: [:e | '($),' includes: e]) asNumber
All the best,
Ron Teitelbaum
-----Original Message----- From: beginners-bounces@lists.squeakfoundation.org [mailto:beginners- bounces@lists.squeakfoundation.org] On Behalf Of Joseph Alotta Sent: Friday, July 01, 2016 12:41 PM To: beginners@lists.squeakfoundation.org Subject: [Newbies] '($1,925.46)' asNumber
Greetings,
I want to convert a String with parenthesis and dollar sign to a Number or Float.
'($1,925.46)’ asNumber
Is there something out of the box that does this, or do I have to write it myself, character by character?
Should I use a ReadStream?
Sincerely,
Joe.
Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
Thanks, Ron. I needed to preserve the negative, so I append a minus sign, then use your snippet. ,
str := '($1,925.46)' . ('(*)' match: str ) ifTrue: [str := '-', str]. str := str reject: [:e | '($,)' includes: e]. num := str asNumber => -1925.46
Sincerely,
Joe.
-- View this message in context: http://forum.world.st/1-925-46-asNumber-tp4904523p4904534.html Sent from the Squeak - Beginners mailing list archive at Nabble.com.
From: Joseph Alotta Sent: Friday, July 01, 2016 2:59 PM
Thanks, Ron. I needed to preserve the negative, so I append a minus sign, then use your snippet.
[Ron Teitelbaum] Excellent! Well done!
,
str := '($1,925.46)' . ('(*)' match: str ) ifTrue: [str := '-', str]. str := str reject: [:e | '($,)' includes: e]. num := str asNumber => -1925.46
Sincerely,
Joe.
beginners@lists.squeakfoundation.org