Fixed bug where data is never set

If the field name contains an underscore, the split will only take the first part of the field name. This causes the form data to never actually update.

I changed the split into a regex to greedily split on the first underscore, keeping the field name intact.