http://www.perlmonks.org?node_id=792282


in reply to matching USD amounts

This should fulfill your requirements and enforce the 100,000 max.
/^\$(?:100,?000(?:\.00)?|\d{1,2},?\d{3}(?:\.\d\d)?)$/