我有一个字符串,因为我想搜索括号对正确嵌套,它必须有一些值在javascript里面
I have a string , in that I want to search the parentheses pair with proper nested and it must have some value inside it in javascript
我有一个字符串,因为我想搜索括号对适当嵌套,它必须有一些值在javascript里面。例如,
String = "@PriceMovement@-(@AssetProof@-(@TradeImpact@)/45)-@UninvestedCashImpact@"
在上述字符串中,所有变量都被@符号覆盖。根据上面的语句,TradeImpact
将首先除以45,剩下的计算已经完成,如果用户像下面这样输入,那么我应该显示使用错误括号的错误(我不能用开始和结束花括号的计数来做,因为下面的字符串也将具有相等的开始和结束花括号)。请帮我验证一下,谢谢。
String = "@PriceMovement@-(@AssetProof@-(@TradeImpact@))/45)-((@UninvestedCashImpact@)"
最简单的方法是将变量替换为值,并将eval
应用于结果字符串:
str = "@PriceMovement@-(@AssetProof@-(@TradeImpact@))/45)-((@UninvestedCashImpact@)"
values = {
PriceMovement: 1,
AssetProof: 2,
TradeImpact: 3,
UninvestedCashImpact: 5
}
try {
str = str.replace(/@('w+)@/g, function($0, $1) {
return values[$1]
})
result = eval(str)
alert(result)
} catch(e) {
alert("Error: " + e)
}
这还捕获其他类型的语法错误,如无效操作符。
要检查方括号嵌套,在循环中替换(...)
,直到没有更多的匹配。然后,检查字符串是否包含未配对的左括号或右括号:
re = /'([^()]*')/g
while(str.match(re))
str = str.replace(re, '')
if(str.match(/[()]/))
alert("INVALID NESTING")
相关文章:
- 在哪里可以找到有关 Javascript 特定参数语法的更多信息?(里面的例子)
- JavaScript: 变量赋值 in for 语句 |在前面或里面
- 理解“javascript : ..;“ 在里面 .
- Javascript if/else 语句不起作用,但是里面的代码就像我在没有 if/else 的情况下测试的那样
- 把php放在javascript里面,那就是php里面
- 将套接字存储为键会产生不正确的值Javascript对象.里面的例子
- 如何在超链接上调用javascript警报's点击,里面有一条包含单引号的消息
- ..之前存在未知的JavaScript语法..在里面
- javascript里面有多少个li
- 我现有的函数里面是什么?Javascript
- 我需要停止一个循环与setTimeout在JavaScript里面
- 如何使用嵌套的Parse处理javascript函数的返回.承诺在里面
- Javascript表单验证,我如何启用按钮和检查细节(更多细节在里面)
- 是否可能有一个Javascript函数有两个或更多的函数在里面
- 是否可能有一个Javascript变量有两个或更多的函数在里面
- Javascript函数只适用于某些"alert()"在里面
- 如何弹出一个javascript警告框与文本框里面更新mysql表
- 你能在LESS css里面做一个javascript for循环吗?
- 我有一个字符串,因为我想搜索括号对正确嵌套,它必须有一些值在javascript里面
- 如何制作一幅油画?这样用户就可以在里面画画了?使用jQuery和JavaScript