Start of line “^”, then an “n”, then any word characters zero or more times (\w*), then a “g”, then the end of the line “$”. The surrounding slashes are convention for certain regex languages, and the last “i” turns on the case insensitive flag.
Personally I’d write this as “(?i)\bn[a-z]*g\b” but there’s many approaches for many different situations.
Because i struggled to understand what you meant I'd like to rephrase it:
It matches only if the regex is applied to a singular word. It's not going to match if there is a sentence or any apostrophe etc, which is implied to be valid input because it supposedly matches "all words".