const regex = /^(generate|create|draw|make) (me|an?|the|this|that)? .* (of|for|about|showing|depicting|illustrating)/gmi;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^(generate|create|draw|make) (me|an?|the|this|that)? .* (of|for|about|showing|depicting|illustrating)', 'gmi')
const str = `Generate an epic image of a dragon in flight
Create a realistic render of a futuristic city
Generate the perfect logo for a tech startup
Create this concept art for a fantasy novel
Generate that illustration about ancient myths
Create an animation showing a volcano eruption
Generate a portrait depicting a medieval knight
Draw me a dragon of fire
Type your prompt below!
As long as the first parts of it are highlighted in multiple colors, like the examples above, the script will reconigize your prompt and generate and image.
Type here...`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions