Tags special character cleanup help

Hello there,

i wanna do some title cleanup and normalization

please help me to go from

Title: !(Fairuz) == - + (Adesh Kan Finas) COVER by Talia

to

Title: Fairuz _ Adesh Kan Finas _ COVER by Talia

i need to create one action to remove all the unneeded characters "=, +, -, (, ), !," and there is more other characters in the other files tags.

can i make one role to remove all the spam clunky characters and cleanup all the TAGS

p.s. i tried to read the help topic but wasn't detailed enough.

thank you :white_check_mark::white_check_mark:

I am pretty sure that even following the given example it will become an extremely difficult task to really treat only the special characters correctly.
E.g. you have 2 pairs of parenthesis - one apparently should be remove, the other one replaced with underscores. Does this always apply? How do you treat files where there is just one pair?
Then: the hyphen is fairly often at least part of English texts - should this really be removed?

Anyway: for each character that you do not like, create an action of the type "Replace" for TITLE. You can join all the replace actions in a single action group so that you get all the specified characters replaced with just one call of the action group.
I do not think that there is a pre-defined set of characters that you would call "special".

I would never attempt to blindly replace all those characters in the whole tag. E.g. in TRACK the / should not be replaced as it serves as separator.

I just scanned through a couple of files and found:
E=MC² by Big Audio Dynamite - replacing the = would make a strange title.
Alone + Easy Target by the Foo Fighters ...
Beats + Pieces by Coldcut
Crows + Locusts by Brooke Fraser
Help! by the Beatles
Groups like P!nk or Sash!
Crash! Boom! Bang! by Roxette
... and parenthesis all over the place.
and many more.

I would definitely filter for each character first and then decide which file should be treated.

i wanna do one replace action for all the special characters in the title, making a role action for each character is very unpractical toward,

here is case

action: replace
field: TITLE
characters "= or + or , or ( or , or ) or , or ! or ,"
replace with "_"

how can i format this action as the given examples doesn't help toward this :bangbang: :interrobang:

The following characters are not special, they are valid and often used in the tag TITLE.

Even if you find some regular expression or other syntax: Such an action would be irreversible!
You can never change it back and it would destroy every TITLE with valid occurences of your characters.
@ohrenkino already has listed several examples where this action would fail dramatically.

I highly suggest not to do that!

i know, lets call it the rubbish unwanted characters.

iam aware of that and ready to any unexpected consequences.

but i still need the help to create my action with one simple role, either with regex or with replace or any other method.

what is the proper syntax to create this role :interrobang:

if found "A" or "B" or "C"
replace any with "D"

is this possible ??

thank you :white_check_mark::white_check_mark:

Create an action Group.
Add an action of the type "Replace" for every character that you want to replace and for every field in which you want to replace that.
Then call that action group.
More on actions and action groups can be found in the help.

this is not helpful in my case, i want to create something like this

$replace(%title%,?,,`, ,.,,^,,'',)

but i can't understand the syntax as it's not in the help page, can you explain it to me, and how to set it as an action :eyes:

Scripting function create a string as a result.
So you can use them anywhere where a format string is required.
To test scripting function, use Converter>Tag-Tag which has a preview.
Use the help for further information on scripting functions.

you still didn't explain the building syntax o this string and how to add to it

$replace(%title%,?,,`, ,.,,^,,'',)

and again the help page doesn't have enough samples :confused::confused:

This is the text from the help:
Replace

Command: $replace(string,from,to) or $replace(string,from1,to1,from2,to2,...)
Example: $replace(%artist% - %album% - %track% - %title%,_,-)
This example replaces all underscores with dashes. You can provide additional pairs of from/to as parameters.

Where in the explanation do you get stuck?

I strongly suggest that you use Converter>Tag-Tag to test your expression first. Try with a single pair first, then add others and see if the expression still returns a valid result.

ok, now iam getting closer, but 2 issues i wanna understand

image_2021-09-29_075005

first if i select the field title in the upper selection as in the pic, why i add "%ARTIST% - %ALBUM% - %TITLE%" in the "format string" field ?? can i add all the needed fields in up in the "field placeholder itself" ??

second and more important, how can i remove these "(" ")" characters as it's part of command itself, but it's also everywhere in the tags fields and i want to remove them ??

any ideas ??

Again, see the help:

Characters with special functionality

[...] The contents of brackets are displayed only if at least one of the placeholders used inside the brackets has been found.
' Outputs raw text without parsing. This will output the contained string and ignore all reserved characters. If you want to output this character, please use ''.
[]$% You have to put a single quote around these reserved characters if you want to use them unparsed.
,() These characters must only be escaped when they are inside a scripting function.

Indeed. You only enter the fields that you really want to treat. In this case it is most likely just %title%.
But as you can use the scripting functions also for format strings like in Converter>Tag-Filename where more than just one field may be in need of such a treatment, it is also possible to set more field variables and text constants.