我正在寻找将音调标记用重音(例如:Nínhǎo)写成拼音的拼音,用数字/ ASCII形式写成的拼音(例如:Nin2 hao1)。
有没有人知道任何库,最好是PHP?或者对中文/拼音有充分的评论意见?
我自己开始写一篇相当简单的文章,但我不会说中文,也不完全理解文字应该用空格分开的规则。
我能够编写一个转换器来翻译:
Nín hǎo. Wǒ shì zhōng guó rén
==> Nin2 hao3. Wo3 shi4 zhong1 guo2 ren2
但是你如何处理如下的单词 - 他们是否将空格分成多个单词,或者你是否插入单词中的音调数字(如果是这样,在哪里?):
huā shíjiān
,wèishénme
,yuèláiyuè
,shēngbìng
等。
答案 0 :(得分:5)
解析拼音而没有空格分隔每个单词的问题是会有歧义。以中国古代都城长安的名称为例:Cháng'ān(注意消歧的撇号)。如果我们删除撇号,但可以通过两种方式解释:Chán gān
或Cháng ān
。一个中国人会告诉你,第二个更可能,取决于当然的背景,但你的计算机无法做到这一点。
假设没有歧义,并且所有输入都是有效的,我会这样做的方式如下:
shēngbìng ^ Does this 'g' belong to the next word?
无论如何,音调的数字表示的正确定位以及代表每个重音的正确数字在Wikipeda关于拼音的文章的这一部分中得到了很好的阐述:http://en.wikipedia.org/wiki/Pinyin#Numerals_in_place_of_tone_marks。您可能还想了解IMEs如何完成工作。
答案 1 :(得分:2)
间距应该保持不变,但是你的音调编号不正确。 Nin2 hao3。 Wo3 shi4 zhong1 guo2 ren2。
wèishénme成为wei4shen2me。