JavaScript获取两个相同字符串之间的字符串?
我试图在字符串的两个不同部分之间提取字符串,但遇到了一个问题。这是我正在使用的字符串:JavaScript获取两个相同字符串之间的字符串?,javascript,string,substring,Javascript,String,Substring,我试图在字符串的两个不同部分之间提取字符串,但遇到了一个问题。这是我正在使用的字符串: onclick="functionName(1816, 1718, 0);" 我试图提取的字符串部分是“1718”,即函数的第二个参数。我试过这样做: $(this).attr('onclick').substring($(this).attr('onclick').lastIndexOf(", ") + 1, $(this).attr('onclick').lastIndexOf(", ")); 它获取
onclick="functionName(1816, 1718, 0);"
我试图提取的字符串部分是“1718”,即函数的第二个参数。我试过这样做:
$(this).attr('onclick').substring($(this).attr('onclick').lastIndexOf(", ") + 1, $(this).attr('onclick').lastIndexOf(", "));
它获取onclick值,应该提取“,”和“,”之间的内容,但它不这样做,而是输出“,”
谢谢你的任何意见 如果您知道它始终是中间的“参数”,这将对您有效:
let onclick=“functionName(18161718,0);”
console.log(onclick.split(',)[1].trim())代码>您可以在逗号之间匹配所需的部分
var string='onclick=“functionName(18161718,0);”,
part=string.match(/,\s*([^,]+),/)?[1];
控制台日志(部分)代码>这个问题在堆栈溢出中有很多不同的形式。找到了几个。更多关于搜索的信息。但话说回来:JavaScript代码不能用像indexOf
或单个正则表达式这样的简单方法正确解析。如果需要解析JavaScript代码,请使用JavaScript解析器。有几个免费的,例如。