def extract(self, text):
_extracted = []<EOL>if text.strip() == "<STR_LIT>":<EOL><INDENT>return _extracted<EOL><DEDENT>parsed_sentences = self._parse_text(text)<EOL>for s in parsed_sentences:<EOL><INDENT>tokens = s.split()<EOL>new_np = []<EOL>for t in tokens:<EOL><INDENT>w, tag, phrase, role = t.split('<STR_LIT:/>')<EOL>if '<STR_LIT>' in phrase and not self._is_verb(w, tag):<EOL><INDENT>if len(new_np) > <NUM_LIT:0> and w.lower() in START_NEW_NP:<EOL><INDENT>_extracted.append("<STR_LIT:U+0020>".join(new_np))<EOL>new_np = [w]<EOL><DEDENT>else:<EOL><INDENT>new_np.append(w.lower() if tokens[<NUM_LIT:0>].startswith(w) and<EOL>not tag.startswith('<STR_LIT:N>') else w)<EOL><DEDENT><DEDENT>else:<EOL><INDENT>if len(new_np) > <NUM_LIT:0>:<EOL><INDENT>_extracted.append("<STR_LIT:U+0020>".join(new_np))<EOL><DEDENT>new_np = []<EOL><DEDENT><DEDENT><DEDENT>return self._filter_extracted(_extracted)<EOL>
Return a list of noun phrases (strings) for a body of text.

        :param str text: A string.