Here is the simple regex for finding all superscript numbers
/\p{No}/gu/
Breakdown:
\p{No}
matches a superscript or subscript digit, or a number that is not a digit [0-9]
u modifier
: unicode: Pattern strings are treated as UTF-16. Also causes escape sequences to match unicode characters
g modifier
: global. All matches (don't return on first match)
https://regex101.com/r/zA8sJ4/1
Now, most modern browsers still have no built in support for unicode numbers in regex. I would recommend using the xregexp
library
XRegExp provides augmented (and extensible) JavaScript regular expressions. You get new modern syntax and flags beyond what browsers support natively. XRegExp is also a regex utility belt with tools to make your client-side grepping and parsing easier, while freeing you from worrying about pesky aspects of JavaScript regexes like cross-browser inconsistencies or manually manipulating lastIndex.
http://xregexp.com/
HTML Solution
HTML has a <sup>
tag for representing superscript text.
The tag defines superscript text. Superscript text appears half a character above the normal line, and is sometimes rendered in a smaller font. Superscript text can be used for footnotes, like WWW[1].
If there are superscript numbers, the html markup almost surely has the sup
tag.
var math = document.getElementById("math");
math.innerHTML = math.innerHTML.replace(/<sup>[\d]?<\/sup>/g, "");
<p id="math">4<sup>2</sup>+ 3<sup>2</sup></p>