### Install FlashText via pip Source: https://flashtext.readthedocs.io Use this command to install the FlashText package in your Python environment. ```bash $ pip install flashtext ``` -------------------------------- ### Test FlashText installation Source: https://flashtext.readthedocs.io Commands to clone the repository and run tests using pytest. ```bash $ git clone https://github.com/vi3k6i5/flashtext $ cd flashtext $ pip install pytest $ python setup.py test ``` -------------------------------- ### Get all keywords Source: https://flashtext.readthedocs.io Retrieves the entire mapping of keywords to their standardized names as a dictionary. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_processor.add_keyword('j2ee', 'Java') >>> keyword_processor.add_keyword('colour', 'color') >>> keyword_processor.get_all_keywords() >>> # output: {'colour': 'color', 'j2ee': 'Java'} ``` -------------------------------- ### Extract keyword spans Source: https://flashtext.readthedocs.io Retrieves the start and end indices of extracted keywords by setting span_info to True. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_processor.add_keyword('Big Apple', 'New York') >>> keyword_processor.add_keyword('Bay Area') >>> keywords_found = keyword_processor.extract_keywords('I love big Apple and Bay Area.', span_info=True) >>> keywords_found >>> # [('New York', 7, 16), ('Bay Area', 21, 29)] ``` -------------------------------- ### Build FlashText documentation Source: https://flashtext.readthedocs.io Commands to clone the repository and generate HTML documentation using Sphinx. ```bash $ git clone https://github.com/vi3k6i5/flashtext $ cd flashtext/docs $ pip install sphinx $ make html $ # open _build/html/index.html in browser to view it locally ``` -------------------------------- ### Extract keywords with FlashText Source: https://flashtext.readthedocs.io Demonstrates initializing the KeywordProcessor, adding keywords, and handling non-word boundaries. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_processor.add_keyword('Big Apple') >>> print(keyword_processor.extract_keywords('I love Big Apple/Bay Area.')) >>> # ['Big Apple'] >>> keyword_processor.add_non_word_boundary('/') >>> print(keyword_processor.extract_keywords('I love Big Apple/Bay Area.')) >>> # [] ``` -------------------------------- ### Extract keywords with FlashText Source: https://flashtext.readthedocs.io Demonstrates basic keyword extraction using standardized names. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> # keyword_processor.add_keyword(, ) >>> keyword_processor.add_keyword('Big Apple', 'New York') >>> keyword_processor.add_keyword('Bay Area') >>> keywords_found = keyword_processor.extract_keywords('I love Big Apple and Bay Area.') >>> keywords_found >>> # ['New York', 'Bay Area'] ``` -------------------------------- ### Add multiple keywords simultaneously Source: https://flashtext.readthedocs.io Populates the processor using dictionaries or lists for bulk keyword management. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_dict = { >>> "java": ["java_2e", "java programing"], >>> "product management": ["PM", "product manager"] >>> } >>> # {'clean_name': ['list of unclean names']} >>> keyword_processor.add_keywords_from_dict(keyword_dict) >>> # Or add keywords from a list: >>> keyword_processor.add_keywords_from_list(["java", "python"]) >>> keyword_processor.extract_keywords('I am a product manager for a java_2e platform') >>> # output ['product management', 'java'] ``` -------------------------------- ### Configure case sensitivity Source: https://flashtext.readthedocs.io Initializes KeywordProcessor with case_sensitive set to True to enforce strict matching. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor(case_sensitive=True) >>> keyword_processor.add_keyword('Big Apple', 'New York') >>> keyword_processor.add_keyword('Bay Area') >>> keywords_found = keyword_processor.extract_keywords('I love big Apple and Bay Area.') >>> keywords_found >>> # ['Bay Area'] ``` -------------------------------- ### Check term presence and access Source: https://flashtext.readthedocs.io Verifies if a keyword exists and retrieves its standardized value using membership operators or dictionary-like access. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_processor.add_keyword('j2ee', 'Java') >>> 'j2ee' in keyword_processor >>> # output: True >>> keyword_processor.get_keyword('j2ee') >>> # output: Java >>> keyword_processor['colour'] = 'color' >>> keyword_processor['colour'] >>> # output: color ``` -------------------------------- ### Check number of terms Source: https://flashtext.readthedocs.io Returns the total count of keywords currently stored in the processor. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_dict = { >>> "java": ["java_2e", "java programing"], >>> "product management": ["PM", "product manager"] >>> } >>> keyword_processor.add_keywords_from_dict(keyword_dict) >>> print(len(keyword_processor)) >>> # output 4 ``` -------------------------------- ### Replace keywords in text Source: https://flashtext.readthedocs.io Replaces identified keywords with their standardized counterparts in a string. ```python >>> keyword_processor.add_keyword('New Delhi', 'NCR region') >>> new_sentence = keyword_processor.replace_keywords('I love Big Apple and new delhi.') >>> new_sentence >>> # 'I love New York and NCR region.' ``` -------------------------------- ### FlashText citation BibTeX Source: https://flashtext.readthedocs.io BibTeX entry for the original FlashText algorithm paper. ```bibtex @ARTICLE{2017arXiv171100046S, author = {{Singh}, V.}, title = "{Replace or Retrieve Keywords In Documents at Scale}", journal = {ArXiv e-prints}, archivePrefix = "arXiv", eprint = {1711.00046}, primaryClass = "cs.DS", keywords = {Computer Science - Data Structures and Algorithms}, year = 2017, month = oct, adsurl = {http://adsabs.harvard.edu/abs/2017arXiv171100046S}, adsnote = {Provided by the SAO/NASA Astrophysics Data System} } ``` -------------------------------- ### Extract extra information with keywords Source: https://flashtext.readthedocs.io Maps keywords to tuples or objects for richer metadata extraction. Note that replace_keywords is not supported with this configuration. ```python >>> from flashtext import KeywordProcessor >>> kp = KeywordProcessor() >>> kp.add_keyword('Taj Mahal', ('Monument', 'Taj Mahal')) >>> kp.add_keyword('Delhi', ('Location', 'Delhi')) >>> kp.extract_keywords('Taj Mahal is in Delhi.') >>> # [('Monument', 'Taj Mahal'), ('Location', 'Delhi')] >>> # NOTE: replace_keywords feature won't work with this. ``` -------------------------------- ### Extract keywords without clean names Source: https://flashtext.readthedocs.io Extracts the original keyword if no standardized name is provided. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_processor.add_keyword('Big Apple') >>> keyword_processor.add_keyword('Bay Area') >>> keywords_found = keyword_processor.extract_keywords('I love big Apple and Bay Area.') >>> keywords_found >>> # ['Big Apple', 'Bay Area'] ``` -------------------------------- ### Remove keywords from processor Source: https://flashtext.readthedocs.io Removes specific keywords or groups of keywords using individual methods or bulk dictionary/list operations. ```python >>> from flashtext import KeywordProcessor >>> keyword_processor = KeywordProcessor() >>> keyword_dict = { >>> "java": ["java_2e", "java programing"], >>> "product management": ["PM", "product manager"] >>> } >>> keyword_processor.add_keywords_from_dict(keyword_dict) >>> print(keyword_processor.extract_keywords('I am a product manager for a java_2e platform')) >>> # output ['product management', 'java'] >>> keyword_processor.remove_keyword('java_2e') >>> # you can also remove keywords from a list/ dictionary >>> keyword_processor.remove_keywords_from_dict({"product management": ["PM"]}) >>> keyword_processor.remove_keywords_from_list(["java programing"]) >>> keyword_processor.extract_keywords('I am a product manager for a java_2e platform') >>> # output ['product management'] ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.