Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| from nltk import ngrams | |
| import nltk | |
| nltk.download('punkt') | |
| def extract_ngrams(text, n): | |
| tokens = nltk.word_tokenize(text) | |
| n_grams = list(ngrams(tokens, n)) | |
| return n_grams | |
| def main(): | |
| st.set_page_config( | |
| page_title="N-gram Input Text", | |
| page_icon=":memo:", | |
| layout="wide" | |
| ) | |
| # Set overall page style | |
| st.markdown( | |
| """ | |
| <style> | |
| body { | |
| color: #333; | |
| background-color: #f8f9fa; | |
| } | |
| .main { | |
| border: 2px solid #28a745; | |
| border-radius: 10px; | |
| padding: 20px; | |
| margin: 20px; | |
| } | |
| h1 { | |
| color: #007bff; | |
| } | |
| p, label, .stMarkdown, .stTextInput, .stSlider, .stButton { | |
| font-weight: bold; | |
| } | |
| </style> | |
| """, | |
| unsafe_allow_html=True | |
| ) | |
| st.title("N-gram Input Text") | |
| text_input = st.text_area("Write a passage:", "") | |
| n = st.slider("Choose the value of n for n-grams:", min_value=1, max_value=5, value=2) | |
| if st.button("Extract N-grams"): | |
| if not text_input: | |
| st.warning("Please enter a text passage.") | |
| else: | |
| n_grams_result = extract_ngrams(text_input, n) | |
| st.subheader(f"{n}-grams:") | |
| st.write(n_grams_result) | |
| if __name__ == "__main__": | |
| main() | |