emoji

package module
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2024 License: BSD-3-Clause, MIT Imports: 2 Imported by: 6

README

go.emoji

Build codecov Go Report Card codebeat badge

GoDoc EmojiVer License

This Package emoji is designed to recognize and parse every individual Unicode Emoji characters from a string.

Example

func main() {
	s := "👩‍👩‍👦🇨🇳"
	i := 0

	final := emoji.ReplaceAllEmojiFunc(s, func(emoji string) string {
		i++
		fmt.Printf("%02d - %s - UTF-8 len %d\n", i, emoji, len(emoji))
		return fmt.Sprintf("%d-", i)
	})

	fmt.Printf("final: <%s>\n", final)
}

// Output:
// 01 - 👩‍👩‍👦 - UTF-8 len 18
// 02 - 🇨🇳 - UTF-8 len 8
// final: <1-2->

Documentation

Overview

Package emoji is designed to recognize and parse every individual Unicode Emoji characters from a string.

Unicode Emoji Documents: https://www.unicode.org/Public/emoji/

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func ReplaceAllEmojiFunc

func ReplaceAllEmojiFunc(s string, f func(emoji string) string) string

ReplaceAllEmojiFunc searches string and find all emojis.

Example
package main

import (
	"fmt"

	emoji "github.com/Andrew-M-C/go.emoji"
)

func main() {
	printf := fmt.Printf

	s := "👩‍👩‍👦🇨🇳"
	i := 0

	final := emoji.ReplaceAllEmojiFunc(s, func(emoji string) string {
		i++
		printf("%02d - %s - len %d\n", i, emoji, len(emoji))
		return fmt.Sprintf("%d-", i)
	})

	printf("final: <%s>\n", final)
}
Output:

01 - 👩‍👩‍👦 - len 18
02 - 🇨🇳 - len 8
final: <1-2->

Types

type CharIterator added in v1.1.0

type CharIterator interface {
	Current() string
	CurrentIsEmoji() bool
	Next() bool
}

CharIterator is used in RangeChars

func IterateChars added in v1.1.0

func IterateChars(s string) CharIterator

IterateChars iterates a string, and extract every characters.

Example
package main

import (
	"fmt"

	emoji "github.com/Andrew-M-C/go.emoji"
)

func main() {
	s := "China:🇨🇳;Japan:🇯🇵"

	for it := emoji.IterateChars(s); it.Next(); {
		fmt.Println(it.Current(), "-", it.CurrentIsEmoji())
	}

}
Output:

C - false
h - false
i - false
n - false
a - false
: - false
🇨🇳 - true
; - false
J - false
a - false
p - false
a - false
n - false
: - false
🇯🇵 - true

Directories

Path Synopsis
internal
official
Package official indicates official unicode emoji variables.
Package official indicates official unicode emoji variables.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL