OSDN Git Service

add 2010 copyright.
[rec10/rec10-git.git] / rec10 / trunk / src / zenhan.py
1 #!/usr/bin/python
2 # coding: UTF-8
3 # Rec10 TS Recording Tools
4 # Copyright (C) 2009-2010 Yukikaze
5
6 import recdblist
7 global z_ascii
8 global h_ascii
9 global z_number
10 global h_number
11 z_ascii = u"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz !”#$%&’()*+,−./:;<=>?@[¥]^_‘{|}〜 〜"
12 h_ascii = u"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz !\"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ -"
13 #z_ascii = z_ascii+Ur"\Ue28892\Uefbc8e"
14 #h_ascii = h_ascii+Ur"\Uefbc8d."
15 z_ascii_sp = unichr(0x2212)+unichr(0xff0e)
16 h_ascii_sp = unichr(0x002d)+unichr(0x002e)
17 z_number = u"0123456789"
18 h_number = u"0123456789"
19 z_alphabet = u"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz #"
20 h_alphabet = u"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz #"
21 def toHankaku(str):
22     retstr = u""
23     for s in str:
24         i = z_ascii.find(s)
25         if (i != -1):
26             s = h_ascii[i]
27         i = z_ascii_sp.find(s)
28         if (i != -1):
29             s = h_ascii_sp[i]
30         i = z_number.find(s)
31         if (i != -1):
32             s = h_number[i]
33         retstr = retstr + s
34     return retstr
35 def toHankaku_ABC123(str):
36     retstr = u""
37     for s in str:
38         i = z_alphabet.find(s)
39         if (i != -1):
40             s = h_alphabet[i]
41         i = z_ascii_sp.find(s)
42         if (i != -1):
43             s = h_ascii_sp[i]
44         i = z_number.find(s)
45         if (i != -1):
46             s = h_number[i]
47         retstr = retstr + s
48     return retstr
49 def check_Character_Type(character):
50     """
51     return code is 1:Alphabet 2:Hiragana 3:Katakana 4:Kanji
52     """
53     #recdblist.printutf8(character)
54     #recdblist.printutf8(type(character))
55     #character=character.encode('UTF-8')
56     #recdblist.printutf8(character)
57     #recdblist.printutf8(type(character))
58     chcode=ord(character)
59     #recdblist.printutf8(ord(chcode))
60     if chcode>=0x0000 and chcode<=0x007F:
61         return 1
62     elif chcode>=0x3040 and chcode<=0x309F:
63         return 2
64     elif chcode>=0x30A0 and chcode<=0x30FF:
65         return 3
66     elif chcode>=0x4E00 and chcode<=0x9FFF:
67         return 4