333
schangxiang@126.com
2025-09-19 18966e02fb573c7e2bb0c6426ed792b38b910940
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# Sentence Case
 
[![NPM version][npm-image]][npm-url]
[![NPM downloads][downloads-image]][downloads-url]
[![Build status][travis-image]][travis-url]
[![Test coverage][coveralls-image]][coveralls-url]
 
Sentence case a string. Explicitly adds a single underscore between groups of numbers to maintain readability and reversibility (E.g. `1.20.5` becomes `1_20_5`, not `1205`), by default.
 
Supports Unicode (non-ASCII characters) and non-string entities, such as objects with a `toString` property, numbers and booleans. Empty values (`null` and `undefined`) will result in an empty string.
 
## Installation
 
### Node
 
```
npm install sentence-case --save
```
 
## Usage
 
```javascript
var sentenceCase = require('sentence-case')
 
sentenceCase('string')         //=> "String"
sentenceCase('dot.case')       //=> "Dot case"
sentenceCase('PascalCase')     //=> "Pascal case"
sentenceCase('version 1.2.10') //=> "Version 1 2 10"
 
sentenceCase('STRING 1.2', 'tr') //=> "Strıng 1 2"
```
 
## Typings
 
Includes a [TypeScript definition](sentence-case.d.ts).
 
## License
 
MIT
 
[npm-image]: https://img.shields.io/npm/v/sentence-case.svg?style=flat
[npm-url]: https://npmjs.org/package/sentence-case
[downloads-image]: https://img.shields.io/npm/dm/sentence-case.svg?style=flat
[downloads-url]: https://npmjs.org/package/sentence-case
[travis-image]: https://img.shields.io/travis/blakeembrey/sentence-case.svg?style=flat
[travis-url]: https://travis-ci.org/blakeembrey/sentence-case
[coveralls-image]: https://img.shields.io/coveralls/blakeembrey/sentence-case.svg?style=flat
[coveralls-url]: https://coveralls.io/r/blakeembrey/sentence-case?branch=master