感谢那几位大佬指点,给他们发红包感谢了。(其实就几毛钱,但是我QQ也就剩下这么多...... )

方法1

str = '[CQ:at,qq=1052757154,text=@筱可儿]';
qq = str.match(/qq=(\d+)/);
console.log(qq)

输出:

[
  'qq=1052757154',
  '1052757154',
  index: 7,
  input: '[CQ:at,qq=1052757154,text=@筱可儿]',
  groups: undefined
]

QQUID=qq[1]

方法2

str = '[CQ:at,qq=1052757154,text=@筱可儿]';
qq=str.match(/(?<=qq=)\d+|(?<=text=@).+(?=\])|(?<=\]).*/g);
console.log(qq)

输出:

[ '1052757154', '筱可儿', '' ]

QQUID=qq[0],nickname=qq[1]

标签: none

已有 5 条评论

  1. 救命 一直在折腾oicq无法获取艾特人的qq的问题
    看到这真的谢谢啊啊啊啊啊!!

    1. 现在让我看这个问题,用“,”作为分隔符取[1]再用"="作为分割符取[1]也行,但是不知道为啥当时我好像没这么用。

      1. 我的话 自己是用
        const { parseUin } = require("@kivibot/core")
        const qq = parseUin("{qq=1141284758}");
        (顺手写的栗子不要拿来抄

        1. ???没懂你这什么意思,项目内置的函数?parseUin是项目写好的函数?

          1. 对的是内置的 原谅我写的屎山太屎()

添加新评论