Javascript 变量和数字的正则表达式匹配
我试图在javascript字符串中匹配变量和数字(用span标记包围匹配) 我对x1、c2等形式的变量有问题。我的代码最初是这样的Javascript 变量和数字的正则表达式匹配,javascript,regex,Javascript,Regex,我试图在javascript字符串中匹配变量和数字(用span标记包围匹配) 我对x1、c2等形式的变量有问题。我的代码最初是这样的 output = output.replace(/\d+/g,"<span class=\"number\">$&</span>"); output = output.replace(/\)/g,"<span class=\"function\">$&</span>"); output = outpu
output = output.replace(/\d+/g,"<span class=\"number\">$&</span>");
output = output.replace(/\)/g,"<span class=\"function\">$&</span>");
output = output.replace(/[a-zA-Z]+\d*/g,returnTextValue);
//returnTextValue is a function checking whether the string is a variable or plain text
//and highlighting accordingly
output=output.replace(/\d+/g,“$&”);
输出=输出。替换(/\)/g,“$&”);
输出=输出。替换(/[a-zA-Z]+\d*/g,returnTextValue);
//returnTextValue是一个函数,用于检查字符串是变量还是纯文本
//并相应地突出显示
这导致[a-zA-Z]+\d+形式的变量无法正确匹配,因为它们已被数字标记替换
我一直在尝试使用lookaheads和类似于[^a-Za-z]?\d+
的方法来处理数字,但没有找到一个好方法
我知道我可以匹配标签,但我想要一个更优雅的解决方案
我是缺少一个明显的逻辑解决方案,还是有人有一个我不知道的正则表达式操作符
第一条规则中的\d+是否应该与孤立的数字匹配?添加边界\b\d+\b,则它将与a2类型不匹配12月6日2:55
第一条规则中的\d+是否应该与孤立的数字匹配?添加边界\b\d+\b,则它将与a2类型不匹配12月6日2:55
第一条规则中的
\d+
是否应该与孤立的数字匹配?添加边界\b\d+\b
,那么它将与a2
类型不匹配。这非常有效,谢谢。如果你把它作为一个答案,我当然会接受。第一条规则中的\d+
应该与孤立的数字匹配吗?添加边界\b\d+\b
,那么它将与a2
类型不匹配。这非常有效,谢谢。如果你把它作为一个答案,我一定会接受。