使用javascript拆分此字符串;正文[99][text]”;
我在表单中有一些输入文本字段,其名称采用以下格式: sometext[234][sometext] 类似于使用javascript拆分此字符串;正文[99][text]”;,javascript,Javascript,我在表单中有一些输入文本字段,其名称采用以下格式: sometext[234][sometext] 类似于 我需要获得'user','2'和'city'与分割功能 谢谢我想正则表达式更适合这里 var res = document.getElementsByTagName('input')[0].getAttribute('name').match(/^(\w+)?\[(\d+)?\]\[(\w+)?\]$/); console.log(res[1]); // === "user" conso
我需要获得'user','2'和'city'与分割功能
谢谢我想正则表达式更适合这里
var res = document.getElementsByTagName('input')[0].getAttribute('name').match(/^(\w+)?\[(\d+)?\]\[(\w+)?\]$/);
console.log(res[1]); // === "user"
console.log(res[2]); // === "2"
console.log(res[3]); // === "city"
返回此数组:
["user", "2", "city", ""]
你用过正则表达式吗?尝试以下示例():
检查这是否有效我宁愿看到一个id被添加,而不是猜测只有一个输入元素:P@Shaz:的确如此。我只是希望OP已经不知何故查询了元素。这只是为了演示。问题是,如果出于某种原因,第一个数值为空,它将被拆分为
['user','city','']
。
["user", "2", "city", ""]
var re = /(.+?)\[(\d+)\]\[(.+?)\]/;
var result = re.exec("user[2][city]");
if (result != null)
{
var firstString = result[1]; // will contain "user"
var secondString = result[2]; // will contain "2"
var thirdString = result[3]; // will contain "city"
alert(firstString + "\n" + secondString + "\n" + thirdString);
}