javascript - 如何分别获取嵌套括号或方括号中的字符串

标签 javascript jquery

我有一个文本框,用户可以将公式写成数学公式。例如用户的输入是 ((a+b) + c) 那么我怎样才能在括号中单独获取字符串

var txt = "((a+b) + c)";
var newTxt = txt.split('(');
for (var i = 1; i < newTxt.length; i++) {
    var value = newTxt[i].split(')')[0];
    console.log(value);
}

在这个例子中,我只得到a+b,但我试图单独获取字符串,例如这样的输出

a+b

(a+b)+c

最佳答案

您可以使用正则表达式获取此值,使用此正则表达式 ^\((.+)\)$ 您将获取外括号内的值。

这是您需要的代码:

var reg = /^\((.+)\)$/;
var txt = "((a+b) + c)";
var value = txt.match(reg)[1];
alert(value);

关于javascript - 如何分别获取嵌套括号或方括号中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30499233/

相关文章:

jquery - Phonegap 暂停事件行为不正确

javascript - 获取从星期日开始的周数

javascript - 在没有全局变量的情况下使变量在函数外部可用

javascript - Express/Sequelize -- PUT Route to Update Form 导致 500 服务器错误

('change' 上的 jQuery ) 逻辑在 ios 8.2/8.3 中表现异常

javascript - jQuery 工具 : Can you nest non-ajax tabs inside of ajaxed tabs?

javascript - 如何使用 jQuery 选择除具有给定类的元素之外的所有元素?

javascript - AngularJS 在指令中附加作用域函数

java - HtmlUnit 无法获取 IFRAME 添加的 js/ajax

javascript - Ember.Select 选项 ValuePath 不适用于集合 ID