|
|
请马上登录,朋友们都在花潮里等着你哦:)
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 马黑黑 于 2023-1-25 12:34 编辑
汉语拼音的重要标志是有声调符号的单韵母,以 a 系列为例, āáǎà 都有声调符号,是明显标志,连同其他的 eiou 等系列,可以以此作为识别拼音的主要特征。我们来看几个拼音的例子:
ā
lā
ān
lān
liāng
以上这些,我们只需要找到 ā 这个重要关键字,然后判断其前其后或有或没有其他字母,就能断定这是汉语拼音。针对这类占绝大多数比例的汉语拼音结构,可以用一个正则表达式去匹配:
let reg_py = /[a-z]*[āáǎàōóǒòēéěèīíǐìūúǔùüǖǘǚǜ][a-z]*/gi;
上述JS正则表达式,头尾都有[a-z]* ,表示拼音的开始部分以及结尾部分,可以是0个或N多个字母;中间较长的一串字符,罗列出全部的标有声调符号的单韵母,它们放在中括号里面,后面没有限制修饰,表示中括号里的这些单韵母出现其中的任意一个。
以上,没什么难度。但,匹配汉语拼音的工作尚未完成。为何?
汉语拼音中,存在一类由轻声韵母组成的结构,比如,“么”字,拼音标为 me,它的写法和英文单词一模一样,这类情况还不少见。
还有一种情形,与轻声韵母有关但又不同于上述情况,有分隔符 ' 的拼音。比如“皮袄”,拼音可记为 pi'ǎo,这里面是两个拼音,pi 和 ǎo,这也给匹配带来麻烦,会被视为一个拼音,处理起来有一定的复杂度。
要区分读轻声的拼音和英文单词,正则表达式无能为力。可以一试的思路是,扩展搜寻读轻声韵母的前后是否是拼音,如果是,则大致上(大概率)构成这一部分的这个韵母是读轻声的韵母。思路而已,没有去尝试,估计不是很容易实现。
|
评分
-
| 参与人数 3 | 威望 +150 |
金钱 +300 |
经验 +150 |
收起
理由
|
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
小辣椒
| + 50 |
+ 100 |
+ 50 |
赞一个! |
樵歌
| + 50 |
+ 100 |
+ 50 |
赞一个! |
查看全部评分
|