Web中文转拼音

前言

pinyin-pro 是一个专业的 js 汉字拼音转换库,功能丰富、准确率高、性能优异。

https://gitcode.com/zh-lx/pinyin-pro/overview?utm_source=csdn_github_accelerator

安装

npm 安装

1
npm install pinyin-pro

浏览器引入

1
<script src="https://unpkg.com/pinyin-pro"></script>

使用

获取拼音

详细文档

https://pinyin-pro.cn/use/pinyin

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import { pinyin } from 'pinyin-pro';

// 获取字符串格式拼音
pinyin('汉语拼音'); // 'hàn yǔ pīn yīn'

// 获取数组格式拼音
pinyin('汉语拼音', { type: 'array' }); // ["hàn", "yǔ", "pīn", "yīn"]

// 获取不带音调数组格式拼音
pinyin('汉语拼音', { toneType: 'none' }); // "han yu pin yin"

// 获取拼音不带音调、去除分隔符、去除空格、转小写
pinyin("姓名 Hello", { toneType: "none", separator: "" })
.replaceAll(" ", "")
.toLowerCase()

// 获取不带音调数组格式拼音
pinyin('汉语拼音', { toneType: 'none', type: 'array' }); // ["han", "yu", "pin", "yin"]

// 音调以数组形式显示
pinyin('汉语拼音', { toneType: 'num' }); // "han4 yu3 pin1 yin1"

// 自动识别多音字
pinyin('睡着了'); // "shuì zháo le"

文本和拼音匹配

1
2
3
4
5
6
7
8
9
10
import { match } from 'pinyin-pro';

// 支持首字母匹配
match('中文拼音', 'zwp'); // [0, 1, 2]

// 支持全拼匹配
match('中文拼音', 'zhongwenpin'); // [0, 1, 2]

// 支持混合匹配
match('中文拼音', 'zhongwp'); // [0, 1, 2]

拼音格式转换

1
2
3
4
5
6
7
8
9
10
import { convert } from 'pinyin-pro';

// 数组转符号
convert('pin1 yin1'); // 'pīn yīn'

// 符号转数字
convert('pīn yīn', { format: 'symbolToNum' }); // 'pin1 yin1'

// 消除符号
convert('pīn yīn', { format: 'toneNone' }); // 'pin yin'

获取带汉字拼音的 HTML 字符串

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import { html } from 'pinyin-pro';

// 带拼音汉字的 HTML 字符串
html('汉语');
/*
<span class="py-result-item">
<ruby>
<span class="py-chinese-item">汉</span>
<rp>(</rp>
<rt class="py-pinyin-item">hàn</rt>
<rp>)</rp>
</ruby>
</span>
<span class="py-result-item">
<ruby>
<span class="py-chinese-item">语</span>
<rp>(</rp>
<rt class="py-pinyin-item">yǔ</rt>
<rp>)</rp>
</ruby>
</span>
*/