code: def search(pattern):
          
          def match(napp):
              """Whether a NApp metadata matches the pattern."""
              # WARNING: This will change for future versions, when 'author' will
              # be removed.
              username = napp.get('username', napp.get('author'))
  
              strings = ['{}/{}'.format(username, napp.get('name')),
                         napp.get('description')] + napp.get('tags')
              return any(pattern.match(string) for string in strings)
  
          napps = NAppsClient().get_napps()
          return [napp for napp in napps if match(napp)]
docs: Search all server NApps matching pattern.
  
          Args:
              pattern (str): Python regular expression.