给定字符串是
var strg = "RoomItemsQuantity[items][1][itemId]"
我有上面的字符串值。如何从字符串中获取itemId。
var index = strg.lastIndexOf("[");
var fnstrg = strg.substr(index+1);
var fnstrg = fnstrg.replace("]","");
我这样做是否有最简单的方法可以做到这一点?
感谢,
答案 0 :(得分:2)
此代码......
var arr = "RoomItemsQuantity[items][1][itemId]".replace(/]/g, "").split("[")
会产生如下数组:
["RoomItemsQuantity", "items", "1", "itemId"]
则...
arr[arr.length - 1]
会给你你想要的东西。
答案 1 :(得分:1)
如果修复了上述模式,那么您可以使用以下技巧:
var myString = "RoomItemsQuantity[items][1][itemId]";
var myItemId = (myString+"[").split("][")[2]
答案 2 :(得分:1)
您可以使用正则表达式,如:
('RoomItemsQuantity[items][1][itemId]'.match(/([^\[]+)\]$/) || [])[1] // itemId
您也可以使用前瞻或后瞻,但可能无法获得支持。