You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

sentence-counter

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sentence-counter

A multilingual sentence counter that supports language detection, sentence splitting, and word counting for multiple languages including English, Chinese, Spanish, French, German, and Japanese

1.0.1
latest
Source
npmnpm
Version published
Weekly downloads
7
75%
Maintainers
1
Weekly downloads
 
Created
Source

sentence-counter

Website

A multilingual sentence counter that supports language detection, sentence splitting, and word counting for multiple languages including English, Chinese, Spanish, French, German, and Japanese.

Features

  • 🔍 Language detection for 6 languages (English, Chinese, Spanish, French, German, Japanese)
  • 📝 Sentence splitting with support for multiple languages
  • 📊 Word counting with language-specific rules
  • 📈 Comprehensive text analysis
  • 🚀 Zero dependencies
  • 📦 Written in TypeScript with full type support

Online Demo

Try our online sentence counter for instant text analysis. The web version provides:

  • Real-time sentence counting
  • Instant language detection
  • Word and character counting
  • Average words per sentence
  • Detailed sentence list
  • No registration required
  • 100% free to use

Installation

npm install sentence-counter

Usage

Basic Usage

import { analyzeText, detectLanguage, splitSentences, countWords, countSentences } from 'sentence-counter'

// Analyze text with comprehensive statistics
const text = "Hello! How are you? I'm fine. 你好!最近怎么样?我很好。"
const stats = await analyzeText(text)
console.log(stats)
// {
//   language: 'en',
//   sentenceCount: 6,
//   wordCount: 12,
//   sentences: ['Hello!', 'How are you?', "I'm fine.", '你好!', '最近怎么样?', '我很好。'],
//   words: ['Hello', 'How', 'are', 'you', "I'm", 'fine', '你好', '最近', '怎么样', '我', '很', '好']
// }

// Detect language
const lang = await detectLanguage(text)
console.log(lang) // 'en' or 'zh' depending on which language has more characters

// Split text into sentences
const sentences = splitSentences(text)
console.log(sentences)
// ['Hello!', 'How are you?', "I'm fine.", '你好!', '最近怎么样?', '我很好。']

// Count words
const words = await countWords(text)
console.log(words)
// ['Hello', 'How', 'are', 'you', "I'm", 'fine', '你好', '最近', '怎么样', '我', '很', '好']

// Count sentences
const count = countSentences(text)
console.log(count) // 6

Supported Languages

The package supports the following languages:

  • English (en)
  • Chinese (zh)
  • Spanish (es)
  • French (fr)
  • German (de)
  • Japanese (ja)

API Reference

detectLanguage(text: string): Promise<SupportedLanguage>

Detects the primary language of the given text based on character frequency and patterns.

splitSentences(text: string): string[]

Splits text into sentences based on language-specific and universal rules.

countWords(text: string): Promise<string[]>

Counts words in text based on language-specific and universal rules.

countSentences(text: string): number

Counts the number of sentences in the given text.

analyzeText(text: string): Promise<TextAnalysis>

Analyzes text and returns comprehensive statistics including:

  • Detected language
  • Sentence count
  • Word count
  • Array of sentences
  • Array of words

Type Definitions

type SupportedLanguage = 'en' | 'zh' | 'es' | 'fr' | 'de' | 'ja'

interface TextAnalysis {
	language: SupportedLanguage
	sentenceCount: number
	wordCount: number
	sentences: string[]
	words: string[]
}

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT © smthokay929

Keywords

sentence

FAQs

Package last updated on 13 Jun 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts