quote_ABC_123123='jsonparse1';
quote_ABC_123123123='jsonparse2';
Erhält regelmäßig die Zeichen nach dem zweiten _ und die folgende Zeichenfolge, um ein Array zu bilden
[123123:jsonparse1,123123123:jsonparse2]
Wie implementiert man es mit js? = =
欢迎选择我的课程,让我们一起见证您的进步~~
var obj = {}; ["quote_ABC_123123='jsonparse1'", "quote_ABC_123123123='jsonparse2'"].forEach(v => { v.replace(/.*_(\d*)='(.*)'/, (a, b, c) => { obj[b] = c; }); }) console.log(obj);
如果组成格式固定的话可以这样:str.split("_")[2];
或者lastIndexOf获取最后一个“_”位置后,截取后面的字符串,
正则我不是很熟,都是随用随查的哪种,等楼下补充
php的话,"/(1+)='(w+)';$/"这个表达式可以取出来等号两边的字符
正则php:
preg_match("/quote_ABC_(.+?)='(.+?)'/", "quote_ABC_123123='jsonparse1'", $matches); var_dump(array($matches[1] => $matches[2]));
explode php:
$arr = explode('_', "quote_ABC_123123='jsonparse1'"); $result = explode('=', $arr[2]); var_dump(array($result[0] => trim($result[1], "'")));
答案上面已经有了,我补充一下。如果前缀是quote_ABC 最好写quote_ABC 第三位要确认需求是不是只是数字还有后面的单引号 会不会出现双引号。另外forEach是ES5的API
如果组成格式固定的话可以这样:
str.split("_")[2];
或者lastIndexOf获取最后一个“_”位置后,截取后面的字符串,
正则我不是很熟,都是随用随查的哪种,等楼下补充
php的话,"/(1+)='(w+)';$/"这个表达式可以取出来等号两边的字符
正则php:
explode php:
答案上面已经有了,我补充一下。如果前缀是quote_ABC 最好写quote_ABC 第三位要确认需求是不是只是数字
还有后面的单引号 会不会出现双引号。另外forEach是ES5的API