Javascript 如何删除最后一个';[]和#x27;从一根绳子?

Javascript 如何删除最后一个';[]和#x27;从一根绳子?,javascript,jquery,string,substring,Javascript,Jquery,String,Substring,我有一些自动生成的文本,其中包含“[]”内的子字符串 例如: data[0]['x'][1]['y'] 我想去掉最后一个子字符串 输出: data[0]['x'][1] 有什么想法吗 var result = input.replace( /\[[^\]]*\]$/, '' ) 如果它是自动生成的,听起来它总是有相同的形式。在这种情况下,只需在最后一次出现“[”时剪切字符串 听起来正则表达式可能很有用,因为输入总是有给定的形式吗?在last[]之后没有文本?@elmes:是的,在last[

我有一些自动生成的文本,其中包含“[]”内的子字符串

例如:

data[0]['x'][1]['y']
我想去掉最后一个子字符串

输出:

data[0]['x'][1]
有什么想法吗

var result = input.replace( /\[[^\]]*\]$/, '' )

如果它是自动生成的,听起来它总是有相同的形式。在这种情况下,只需在最后一次出现“[”时剪切字符串


听起来正则表达式可能很有用,因为输入总是有给定的形式吗?在last
[]
之后没有文本?@elmes:是的,在last[]之后不会有任何其他文本@SreekeshOkky然后Strille给出的答案很好你到底想做什么?你是在用Javascript编写自己的语言解析器吗?如果不是,我愿意打赌有一种更简单的方法来实现你正在做的任何事情。为了让它接受这样的字符串,regexp的大小将增加两倍,并且在我创建时不要再重复任何绕圈需要此项。(仅当catOnKeyboard生成可变名称时)
var str = "data[0]['x'][1]['y']";
str = str.substring(0, str.lastIndexOf("["));