Javascript-将字符串中的所有数字更改为下标
Javascript - Change all numbers in a string to subscripts
我有一个输入框,用户可以在其中输入化学式。我在一个表中向他们显示他们的输入,在我的javascript文件中有以下代码。
document.getElementById("entered").innerHTML = userIn;
其中"userIn"是输入框的"id","entered"是表行中数据的id。
现在,我的问题是:
有没有办法把公式中的所有数字都改成下标,但字母不变?那么,如果输入了H2O2,那么只有2变成下标?
使用下面给出的简单regex替换
document.getElementById("entered").innerHTML = userIn.replace(/('d+)/g, '<sub>$1</sub>');
演示:Fiddle
您可以使用正则表达式将userIn
中的所有数字用<sub></sub>
标记括起来。以下内容应该有效:
userIn.replace(/('d+)/g, "<sub>$1</sub>");
正则表达式中的+
将把一串连续的数字组合在一起,正则表达式中尾部的g
表示替换所有的数字串,而不是仅替换userIn
中的第一个数字串。
相关文章:
- 如何告诉MathJax对下标使用替代语法
- 如何在不检查HTTP标头的情况下检测移动浏览器
- 返回JSON中的下标
- HTML 输入中的上标和下标
- Javascript,为带有下标和上标的文本字段创建模板
- 如何找到下标字母表的unicode
- 如果var在一个递减的数字下,做点什么
- Javascript-将字符串中的所有数字更改为下标
- 有没有一般的下标函数
- 在Javascript中,我如何检查字符串是否只是字母+数字(下划线允许)
- 如何JSON.解析并忽略数组下标
- 数组的下标是否被移到了正确的位置向左还是向右
- 从js对象渲染下标到HTML
- 在Javascript中给字符串下标
- Javascript性能考虑.点运算符比下标符号快
- 对数组的奇数下标处的所有数字进行平方
- 在Javascript中递增一个字符串下标数字
- 使用jquery将数据加载到下标按钮中
- 为什么子字符串不处理负下标
- 元素的-1下标是什么意思?