When I am having difficulty trying to figure out where my code is going wrong, I sometimes paste it into chatGPT. I hope that's OK, some folks detest AI and I'm not a fan of using it for images, myself. This is for a script I am developing for AD&D 1e for a chat window's button to show a party member's "wealth notes". strName is the character's name and Wnotes is the wealth notes taken from the character's sheet using: let Wnotes = getAttrByName ( CharID , "wealthNotes" ) || "" ; The recommended lines I am getting include, in various places: let wealthMsg = '!wealthnotesdisplay "' + strName + '" "' + Wnotes . replace( /"/g , '"' ) + '"' ; I know it is trying to replace something with a quotation mark, but what is the /"/g character(s)? I don't know what the line is trying to replace. Next, in the procedure for !wealthnotesdisplay (as showing above) there are another couple of .replace statements with some different arguments, here is one: let charName = args [ 0 ] ? args [ 0 ] . replace( /"/g , '' ) : "" ; I don't know what any of the arguments in the .replace are. Can anyone tell me? In addition to the arguments, what is the ? immediately following args[0]? Is the colon after the .replace similar to ||? If not, what is it? Just before this line there is the definition of args, is a .match line. I get it is separating the arguments following the !wealthnotesdisplay command, but I normally use a space or sometimes -- to separate my arguments. What is this doing here? let args = msg.content.match(/"([^"]*)"/g) || []; All I can tell is the || sending an empty array is there are no arguments. Thanks for any help.