试试这个可以么?
<script language="JavaScript">
<!--
theV = "([液高]+[液温])*[液密]";
var re = new RegExp(/\(\[(.*)\]\+\[(.*)\]\)\*\[(.*)\]$/);
var r = theV.match(re); 
if(r==null)
  alert('请输入正确的格式!');
else
  alert(r[1]+"  "+r[2]+"   "+r[3]);
//-->
</script>

解决方案 »

  1.   

    如何判断 [ 和 ] 配对,
    比如判断theV = "([液高]+[液温])*[液密]";这个式子当中的[和]这个公式是可变的,我不一定是这个格式的就是让用户自己写一个公式,不一定是上面的那个
      

  2.   

    split把*前面的([液高]+[液温]) 提取出来
    得到字符串 astring
    然后indexOff()搜索 "+"  位置 返回数字 比如10
    然后搜索 [  位置 应该得到比10小的
    然后搜索 ] 位置 应该得到比10小的lastIndexOf()然后搜索 [  位置 应该得到比10大的
    然后搜索 ] 位置 应该得到比10大的