How to find a word in text with a concordance tool
Paste text into Input text or load a local file with Upload. Enter a word, phrase, or JavaScript regular-expression pattern in Search term. Each matching row shows the Line number, the text in Left context, the highlighted Match, and the text in Right context. Concordance Results (KWIC) updates when the search settings change.
- Paste text into Input text, or select Upload to read a local text file.
- Enter a word, phrase, or pattern in Search term.
- Choose a value in Context (words), then set Case sensitive, Whole word, or Regex.
- Read Concordance Results (KWIC), then select Copy or CSV to take the rows elsewhere.
How KWIC word search shows context
KWIC means Key Word In Context. Each row separates the match from the words before and after it. Line shows the match's 1-based line number, and Match is highlighted in the table.
Input: The fox runs fast.
Search term: fox
Left context: The
Match: fox
Right context: runs fast.
What Context (words) changes
Context (words) has four choices: 4, 6, 8, or 12 words on each side. The default is 6. For each match, the tool takes up to 400 characters on either side, splits that text at whitespace, and keeps the requested number of words. Context can be shorter at the start or end of the input.
Case sensitive distinguishes uppercase from lowercase letters. Whole word adds word boundaries to a literal search, so cat does not match the middle of catalog. Regex disables Whole word.
How to search text with Regex
Select Regex when Search term should be read as a JavaScript regular-expression pattern. Matching is global and ignores case until Case sensitive is selected. The tool skips empty matches, and global matching returns non-overlapping matches. An invalid pattern shows an "Invalid regular expression" message instead of rows.
How Line and context support review
Search a repeated name or phrase in a draft, then use Line to locate each passage in the source. The surrounding words show how the match is used without opening each occurrence separately.
Regex can target a recurring pattern in a log. Change Context (words) to compare a shorter or longer window, then use CSV when the rows need to be opened in another tool.
When another text analysis tool fits better
Open Text Analysis Tools to choose another kind of text check. Use Keyword Density Analyzer for 1-word to 3-word phrase counts and a density view. Choose Word Counter & Text Analyzer for word, character, sentence, readability, lexical-diversity, and reading-time measures. Choose Regex Tester to inspect JavaScript regex matches, capture groups, and match indexes.
Results, exports, and empty searches
The stats bar reports the match count and the number of lines containing matches. Copy creates one tab-separated row per match with Line, left context, match, and right context. CSV downloads concordance-results.csv with Line, Left Context, Match, and Right Context columns. Narrow table cells can display less text than the stored context, which Copy and CSV retain.
The table appears only when Input text and Search term contain text. With zero matches, it shows a no-occurrences message and disables Copy and CSV. The search stores the first 20,000 matches; a larger result set is labeled as showing the first 20,000.
Frequently asked questions
What is a concordance tool?
A concordance tool lists each occurrence of a word or phrase with nearby text. Concordance Results (KWIC) adds Line, Left context, Match, and Right context columns.
How do I search a word in context?
Paste text into Input text, enter the word in Search term, and read Concordance Results (KWIC). Change Context (words) to select how many nearby words appear on each side.
Can I search text with a regular expression?
Select Regex and enter a JavaScript regular-expression pattern in Search term. Whole word is disabled in Regex mode. Invalid syntax produces an "Invalid regular expression" message.
Does the concordance tool keep my text in the browser?
Matching, context extraction, clipboard preparation, and CSV generation run in browser-side JavaScript. The page code contains no request that uploads the text.