中文轉換成漢語拼音(無音調)

使用指令將中文轉換成漢語拼音(無音調)

使用教育部的中文譯音轉換系統查詢漢語拼音


先下載或編譯avan06開源的htmlq

https://github.com/avan06/htmlq

主要BASH script

#!/usr/bin/env bash

if [ $# -ne 1 ]; then
echo '需要一個中文字串'
exit 1
fi
chstr=$1

# 向教育部的中文譯音轉換系統查詢漢語拼音
curl -s --get \
-o query.html \
--data-urlencode "SN=$chstr" \
--data-urlencode "sound=2" \
'https://crptransfer.moe.gov.tw/index.jsp'

# 抓出漢語拼音文字內容
dirtyPinyin=$(./htmlq -f query.html -a -x -q "//table[contains(@class, 'result')]/tbody/tr[3]/td[1]//text()")

# 移除中間的奇怪的字
pinyin=$(echo $dirtyPinyin | sed 's/[^[:alnum:]]/ /g')

echo "'$chstr'的漢語拼音:'$pinyin'"

將script命名成ch2pinyin並給予執行權限

執行範例

./ch2pinyin 一二三

執行結果

'一二三'的漢語拼音:'yi er san'


留言