Special Character Coding Challenge - Check string for validity (Lots of rules)
Raku, 41 bytes



{?/^[\s*\!?\s*\d+\.?\d*\s*]+%&lt;[%&amp;#$!]&gt;$/}


Try it online!

Checks if the input matches against a regex.

Explanation:

{?/^                                 $/}  # Check if the input is
    [                     ]+  # A series of
        \!?                   # An optional ! followed by
              \d+\.?\d*       # A number
     \s*   \s*         \s*    # Interspersed with optional whitespace
                            %           # Joined by
                             &lt;[    ]&gt;   # Any of
                               %&amp;#!     # The special characters