code: def test_special_characters_and_whitespace(self):
      x = pd.Series(["50% 50 50% \t\t\t\n\n", "$5,3040 a test* test"])
      expected = pd.Series([16, 20])
      actual = self.primitive().get_function()(x)
      pd.testing.assert_series_equal(
          actual, expected, check_names=False
      )
  
file_path: featuretools/featuretools/tests/primitive_tests/natural_language_primitives_tests/test_num_characters.py
imports: import numpy
  import pandas
  from featuretools.primitives import NumCharacters
  from featuretools.tests.primitive_tests.utils import PrimitiveTestBase, find_applicable_primitives, valid_dfs
label_desc: Use image node_id 2 for calling the TestNumCharacters obj's underlying member method code with example usage: obj.test_special_characters_and_whitespace() without return types