Out of curiosity I had a look for maxspeed= with values that contain at least one semicolon on taginfo.
It is most likely that this kind of maxspeed values are created by merging at least two highway segments with different maxspeed values.
If you want to have a look yourself click here and type a ";" in the (lower) search box for values.
Accumulating the numbers there are 1058 key-value-pairs containing a semicolon.
Interpolating this one can consider that supposedly at least 2116 highway segments got merged without the mapper taking good care about what he did. Looking at the topic it seems obvious that often more then two segments got united.
I do not know of any Quality Assurance tool which is checking for this kind of errors. If you do, please mention it at the comments.
More important than to fix this data is not to create new errors of this kind.
- Luckily the default behaviour for merging ways in JOSM has been altered from combining the values as "value1;value2" by default. Now the user is forced to select one of the conflicting values.
- In Potlatch2 combined values are shown in red with a warning sign.
- iD merges ways with conflicting tags without complaining. Of course there are no plans for an intrusive warning because "they run counter to iD's goal of encouraging new users to contribute to the map because they make them feel insecure, even when their edits are perfectly legitimate"(link). Another issue against iD regarding conflicting tags is a year old.