numToTex function
A number: digit groups of three with thin spaces (from five digits),
e-exponents as \times 10^{n}, +- as \pm.
Implementation
String numToTex(String input) {
var s = input.replaceAll(' ', '').replaceAll(r'\pm', '±');
if (s.isEmpty) return '';
s = s.replaceAll('+-', '±');
final parts = s.split('±');
final value = _number(parts.first);
if (value == null) return input;
if (parts.length == 1) return value;
final uncertainty = _number(parts[1]);
return '$value\\pm ${uncertainty ?? parts[1]}';
}