zoukankan      html  css  js  c++  java
  • 常用正则表达式——中文匹配、拉丁匹配

    最近写脚本发现正则也挺有用的,于是就研究了一下。

    总结起来使用正则表达式来匹配中文、韩文、日文、拉丁等范围的字符非常方便。这里也用到了unicode编码表相关知识,下面给出wiki的具体链接,有兴趣的童鞋可以去看看。

    Unicode字符平面映射:

    http://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC%A6%E5%B9%B3%E9%9D%A2%E6%98%A0%E5%B0%84

    Unicode字符列表:

    http://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC%A6%E5%88%97%E8%A1%A8

    中(包括繁体)日韩字符:[u2E80-u9FFF]

    拉丁字符:([u00A0-u00FF]|[u0100-u017F]|[u0180-u024F])

    中(包括繁体)字符:[u4E00-u9FA5]

    这里拉丁我的典型应用时匹配汉字的音标:

    下面是测试文档:

    然后把范围扩大到^[u2E80-u9FFF]+
    $, 这样倒是都通过了, 这个应该就是匹
    配中日韩文字的正则表达式了, 包括我們
    臺灣省還在盲目使用的繁體中文

    sdfsdf,sdjsldj,sdj;lasjdfiselfes;lf
    sjs;ldkjfie;sldijf  n-bottom: 0'>dā<
    /p><pèsssdsddsàddssdsdchūnchúnchǔng
    uī;guǐ;guìhūn;hún;hǔn;hùn

    匹配结果截图:

    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    补充部分:

    虽然上面的工具是可以正确识别上面正则表达式的,但是对于有些工具(例如:文本编辑器emeditor、notepad++等)却不好使。而对于这些工具一般使用如下格式来使用匹配范围字符。

    例如:

    中(包括繁体)日韩字符:[x{2E80}-x{9FFF}]

    拉丁字符:([x{00A0}-x{00FF}]|[x{0100}-x{017F}]|[x{0180}-u024F}])

    中(包括繁体)字符:[x{4E00}-x{9FA5}]


  • 相关阅读:
    OneDay!——冲刺日志9(05-06)
    Hail_Hydra2—代码规范
    Hail_Hydra2—凡事预则立
    Alpha冲刺的问题总结
    Hail_Hydra2—冲刺日志集合
    Hail_Hydra2—总结随笔
    Hail_Hydra2—测试随笔
    Hail_Hydra2—冲刺日志(10)
    Hail_Hydra2—冲刺日志(9)
    Hail_Hydra2—冲刺日志(8)
  • 原文地址:https://www.cnblogs.com/superstargg/p/4437261.html
Copyright © 2011-2022 走看看