Is there a way to split up a message based off special characters?

Issue

I am currently trying to make a discord bot with a command title "reactionrole". In this command I would like to let the user create an embed using a single message. For example, (-reactionrole "title blah blah" / "description blah blah" / "role1" "role2" / "emoji1" "emoji2") would be sent as a Discord message. Here’s what I’ve tried so far

name: 'reactionrole',
    description: "Sets up a reaction role message!",
    async execute(message:any, args:any, Discord:any, client:any) {
        const slicePoint = ('/');
        var segments = message.content.includes(slicePoint.length).split(slicePoint);
         var msg = message.content;
         var segments = msg.split('/');
         var firstRole = message.guild.roles.cache.find((role:any) => role.name === segments[2]);
         var firstEmoji = segments[3];
         var secondRole = message.guild.roles.cache.find((role:any) => role.name === segments[2]);
         var secondEmoji = segments[3];

let embed = new Discord.MessageEmbed()
         .setTitle(segments[0])
         .setDescription(segments[1])

and then there’d also be some reactions that would be added based off Segments 2 and 3 but I already know how to make that. If anyone could help that’d be amazing

Solution

So you mean like a separator?



const separated = message.content.slice(prefix.length).trim().split(" / ")
console.log(separated[1])
//This should serve what you're trying to achieve
// If I send a message like !separate hello :) / there, if u log them, you'd get 'hello :)' and 'there' separately
 

Answered By – Azer

Answer Checked By – Terry (AngularFixing Volunteer)

Leave a Reply

Your email address will not be published.