Когда пользователь отправляет команду в Discord, как аргументы могут быть разделены символьным сообщением? - PullRequest
0 голосов
/ 13 октября 2018

Таким образом, пользователь отправляет сообщение (только для примера) =rateM 8 | Led Zepplin | Immigrant Song в Discord, чтобы оценить песню от 1 до 10.Я хочу сделать так, чтобы символ вертикальной черты, |, разделял аргументы команды.

Мой код для команды if(command === "rateM") let [score, artist, song] = args };.Я хочу сделать так, чтобы я мог определить, например, аргумент score как все, что находится между командой =rateM и первой вертикальной чертой.Как я могу это сделать?Буду ли я использовать split(); как-нибудь?

1 Ответ

0 голосов
/ 13 октября 2018

Сначала избавьтесь от rateM, удалив первые 5 символов из сообщения пользователя,

let message = "rateM 8 | Led Zepplin | Immigrant Song" // user message

let argsString = message.substring(5);

Теперь разбейте строку, чтобы создать массив с аргументами,

lets args = argsString.split(" | ")
/*args[0] === 8
  args[1] === Led Zeppelin
  args[2] === Immigrant Song*/
...