Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 变量和数字的正则表达式匹配_Javascript_Regex - Fatal编程技术网

Javascript 变量和数字的正则表达式匹配

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

我试图在javascript字符串中匹配变量和数字(用span标记包围匹配)

我对x1、c2等形式的变量有问题。我的代码最初是这样的

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
类型不匹配。这非常有效,谢谢。如果你把它作为一个答案,我一定会接受。