${TM_FILENAME/(.+)\..+/$1/}
${text_to_search/regex/replacement/modifiers}
The replacement can be a regex and/or text expression.
The modifiers are:
g - global search
i - case-insensitive
m - multi-line search.
(.+)\..+
This means (capture any one character or more) that is followed by a dot . and any one character or more. So,
(capture_this).discard_this
The captured text (a capture-group is identified with brackets) - is referred to as $1 in the regex. If there were more groups they would be $2, $3, with $0 referring to the whole matched expression. [Outside of a regex $1 would refer to the snippet tab-positioned content.]
I don't know about :name

maybe it gives the snippet position 1 the alias 'name' so that it can be referred to later in the snippet as ${:name} ?? Curious if anyone knows..
The attached text file is supposed to describe STs variant of regular expressions. I think it actually describes a
compatible variant, so is only 96.4% accurate, or maybe 95%

.
"I'm here to save your life. But if I'm going to do that, I'll need total uninanonynymity." Me Myself & Irene.