一个有关于分离字符串的问题,请大家帮忙!!

lanfanghelanfanghe 2004-04-15 02:39:12
字符串格式如下:

([液高]+[液温])*[液密]

这个公式是用户输入的,为了防止输入错误和提取并替代其中的汉字,
其中把那三个词提取出来,并且能判断[]是否配对,或者()是否配对
请大家帮忙,狂急!!!!



...全文
67 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanfanghelanfanghe 2004-04-15
  • 打赏
  • 举报
回复
是不是没有好方法了,
lanfanghelanfanghe 2004-04-15
  • 打赏
  • 举报
回复
有没有更好的方法!!请大家帮帮忙
  • 打赏
  • 举报
回复
split把*前面的([液高]+[液温]) 提取出来
得到字符串 astring
然后

indexOff()

搜索 "+" 位置 返回数字 比如10
然后搜索 [ 位置 应该得到比10小的
然后搜索 ] 位置 应该得到比10小的

lastIndexOf()

然后搜索 [ 位置 应该得到比10大的
然后搜索 ] 位置 应该得到比10大的



lanfanghelanfanghe 2004-04-15
  • 打赏
  • 举报
回复
如何判断 [ 和 ] 配对,
比如判断theV = "([液高]+[液温])*[液密]";这个式子当中的[和]

这个公式是可变的,我不一定是这个格式的

就是让用户自己写一个公式,不一定是上面的那个


kisslan 2004-04-15
  • 打赏
  • 举报
回复
试试这个可以么?
<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>
lanfanghelanfanghe 2004-04-15
  • 打赏
  • 举报
回复
up

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧