emojicharstring
v0.1.2
Published
[![npm version](https://badge.fury.io/js/emojicharstring.svg)](https://badge.fury.io/js/emojicharstring) [![Build Status](https://travis-ci.org/YingshanDeng/EmojiCharString.svg?branch=master)](https://travis-ci.org/YingshanDeng/EmojiCharString) [![Coverag
Downloads
12
Maintainers
Readme
EmojiCharString
When the string contains emoji, we use String.prototype.length
cannot get the characters count correctly! Such as:
'👦🏿'.length
return 4, it should be 1!'👨👩👦'.length
return 8, it alse should be 1!
EmojiCharString is based on a RegExp to work with JavaScript String's unicode problem. It can solve the problem above.
❗️Note that it is not for good performance but for accuracy, because it uses a complex RegExp to analyze the string.
Install
Using NPM, install EmojiCharString, and add it to your package.json
dependencies.
npm install emojicharstring --save
And then you can import it
// CommonJS
const EmojiCharString = require('EmojiCharString');
// or ES6
import EmojiCharString from 'EmojiCharString'
Or include the file in your HTML page using the following tags:
<script src="/path/to/dist/EmojiCharString.min.js"></script>
Usage
initialise EmojiCharString
var emojiStr = new EmojiCharString('👦🏿')
length
Get the string's length correctly.
var emojiStr = new EmojiCharString('👦🏿')
var len = emojiStr.length // 1
toString
Get the string you pass in.
var emojiStr = new EmojiCharString('hello')
var str = emojiStr.toString() // hello
reverse ()
Reverse the string in place.
var emojiStr = new EmojiCharString('👦🏿👨👩👦')
console.log(emojiStr.reverse()) // '👨👩👦👦🏿'
substring (begin = 0, end)
The substring() method returns a subset of a string between begin index and end index
| Param | Type | Default | Description | |---|---|---|---| | begin | Number | 0 | begin index | | end | Number | none | end index |
var emojiStr = new EmojiCharString('👨👨👦 our family 我们一家 ❤️')
console.log(emojiStr.substring(2, 5)) // 'our'
substr (begin = 0, len)
The substr() method return the characters in a string beginning at the specified location through the specified number of characters.
| Param | Type | Default | Description | |---|---|---|---| | begin | Number | 0 | Location at which to begin extracting characters | | len | Number | none | The number of characters to extract |
var emojiStr = new EmojiCharString('👨👨👦 our family 我们一家 ❤️')
console.log(emojiStr.substr(2, 5)) // 'our f'
License
MIT