рд╕рдорд╕реНрдпрд╛ рдХрдерди
рдЕрдВрдЧреНрд░реЗрдЬреА рдкреНрд░рддрд┐рд▓реЗрдЦрди рдореЗрдВ рд░реВрд╕реА рдФрд░ рдпреВрдХреНрд░реЗрдиреА рдирд╛рдореЛрдВ рдХреА рд╕реВрдЪреА рд╡рд╛рд▓рд╛ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд░реНрдпрдЯрдХ рдкрд╛рд╕рдкреЛрд░реНрдЯ рдореЗрдВ рджрд░реНрдЬ рд╣реИред рдЪреВрдВрдХрд┐ рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рд░реВрд╕ рдореЗрдВ рдЗрди рдкрд╛рд╕рдкреЛрд░реНрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд▓реЗрдЦрди рдирд┐рдпрдо рдмрджрд▓ рдЧрдП рдереЗ (рдЕрдВрдЧреНрд░реЗрдЬреА рд╕реЗ рдлреНрд░реЗрдВрдЪ рд╕реЗ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЯреЛрд▓реА), рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдирд╛рдо рдХреЛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбреЗрдЯрд╛ рдХреЛ рдХрднреА-рдХрднреА рд╕рдореБрджреНрд░реА рдкрд╛рд╕рдкреЛрд░реНрдЯ рд╕реЗ рд▓рд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕реНрдерд┐рддрд┐ рдФрд░ рднреА рднреНрд░рд╛рдордХ рд╣реЛ рдЬрд╛рддреА рд╣реИред
рдЕрдм рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдВрддрд┐рдо рдирд╛рдо рд╕реЗ рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдЦреЛрдЬрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢рдЪреАрдЧреНрд▓реЛрд╡ ... (рдореБрд╕реНрдХрд╛рди)
рд╕рдорд╛рдзрд╛рди рдХреЗ рд╡рд┐рдХрд▓реНрдк
рдореМрдЬреВрджрд╛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рдпрд╛ рддреЛ рд╢реБрджреНрдз рдЕрдВрдЧреНрд░реЗрдЬреА рдХреЗ рд▓рд┐рдП рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕ рджреНрд╡рд╛рд░рд╛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╛ "рдЧрд░реНрдо рдЦреЛрдЬ" рдХреА рдкреВрд░реНрдг рдЕрд╕рдВрднрд╡рддрд╛ рджреНрд╡рд╛рд░рд╛ (рдЙрдкрдирд╛рдо рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рддреБрд▓рдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ)ред рдФрд░ рдлрд┐рд░ рдореБрдЭреЗ рдПрдХ рд╕рд░рд▓ рдПрд▓реНрдЧреЛрд░рд┐рдердо рдпрд╛рдж рдЖрдпрд╛ рдЬреЛ рдореИрдВрдиреЗ рдХрдИ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдПрдХ рдЧреНрд░реАрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдерд╛, рдЬрд╣рд╛рдВ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдФрд░ рднреА рдХрдареЛрд░ рдереА: рдЙрдкрдирд╛рдо (рдЧреНрд░реАрдХ) рд╡рд╣рд╛рдВ рдХреЗ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдлреЛрди рджреНрд╡рд╛рд░рд╛ рд╕реБрдирд╛ рдЬрд╛рдирд╛ рдерд╛ред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рд╡рд░реНрдгрди рдореБрдЭреЗ рдореЗрд░реЗ рддрддреНрдХрд╛рд▓реАрди рд╕рд╛рдереА рдиреЗ рджрд┐рдпрд╛ рдерд╛, рдЗрд╕реЗ "рд╡реЙрдпрд▓" рдХрд╣рд╛ред рдЧреНрд░реАрдХ рдФрд░ рд░реВрд╕реА, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдмрд╣реБрдд рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рд▓реЗрдЦрди рдХреЗ рд╕рд╛рде рдЫрд┐рджреНрд░ рдХрд╛рдлреА рд╕рдорд╛рди рд╣реИрдВ, рдФрд░ рдореИрдВрдиреЗ рд░реВрд╕реА рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП "рдЖрд╡рд╛рдЬ" рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдЬреЛрдЦрд┐рдо рдЙрдард╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рдХреБрдЫ рдЖрд╡рд╢реНрдпрдХ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг
рдХрдИ рд╕рд╛рд▓ рдкрд╣рд▓реЗ - рдЬрдм рд╕реВрд░рдЬ рдЪрдордХреАрд▓рд╛ рдерд╛, рдШрд╛рд╕ рд╣рд░рд┐рдпрд╛рд▓реА рдереА, рддреЛ рд▓рдбрд╝рдХрд┐рдпрд╛рдВ рдЕрдзрд┐рдХ рд░рд╣рд╕реНрдпрдордп рдереАрдВ, рдФрд░ рдореЛрдЯреА рд░реЗрдЦрд╛рдУрдВ рдореЗрдВ рдмреНрд░реИрдб рд╢рдмреНрдж рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рд╕рдорд╛рди рд╡рд┐рдЪрд╛рд░рдзрд╛рд░рд╛ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде, рдЫреЛрдЯреЗ рдФрд░ рдордзреНрдпрдо рдЧреНрд░реАрдХ рдХрдореНрдкрд╛рд╕ рдХреЗ рд▓рд┐рдП рдмреИрдХреЗрдВрдб рд▓рд┐рдЦрдХрд░ рд░реЛрдЯреА рдФрд░ рдордХреНрдЦрди рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рддрд╛рдХрдд рдХрд╛ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ред
рддрдм рд╕реЗ, рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд▓реЗрдЦрдХ рдХрд╛ рд╡реНрдпрд╡рд╕рд╛рдп рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЖрдИрдЯреА рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХрдИ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕реЗ рдЬреБрдбрд╝рд╛ рдирд╣реАрдВ рд╣реИред рдмреЛрд░рд┐рдВрдЧ рдорд╛рдирд╡ рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдмрдВрдзрди, рдЧреНрд░реЗ рдСрдлрд┐рд╕ рдХрд╛рд░реНрдпрджрд┐рд╡рд╕ред
рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдкреВрд░реНрд╡ рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рдЬрдм рдХрд╛рд░реНрдпрд╛рд▓рдп рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдкреНрд░рд╢реНрди рд░рд╣рд┐рдд рдкреЗрдкрд░рд╡рд░реНрдХ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╡рд╛рд▓ рдЙрдарддрд╛ рд╣реИ, рддреЛ рдореИрдВрдиреЗ рдПрдХ рд╕рд┐рд╕реНрдЯрдо рд▓рд┐рдЦрдиреЗ рдХрд╛ рдЬреЛрдЦрд┐рдо рдЙрдард╛рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЬрд░реВрд░рддреЗрдВ рдорд╛рдореВрд▓реА рд╣реИрдВред
рдореИрдВрдиреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЖрд▓реЛрдЪрдирд╛ рдФрд░ рдореВрд▓реНрдпрд╡рд╛рди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдореВрд▓реА рдЙрдореНрдореАрдж рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдФрд░ / рдпрд╛ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдЙрдкрдХреНрд░рдо рдХрд┐рдпрд╛ред
рддреЛ, "рдЧреЛрд▓реНрдбрдлрд╝рд┐рдВрдЪред"
рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЙрд▓реНрд▓рд┐рдЦрд┐рдд "рд╡реЙрдпрд▓" рдиреЗ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдХрд╛рдо рдХрд┐рдпрд╛: рдкреВрд░реЗ рд╢рдмреНрдж рдХреЛ рдПрдХ рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдЪрд▓реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдФрд░ рдХреБрдЫ рдЕрдХреНрд╖рд░реЛрдВ рдпрд╛ рдЕрдХреНрд╖рд░реЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЛ рдЙрдирдХреЗ "рдзреНрд╡рдиреНрдпрд╛рддреНрдордХ рдореЗрд▓реЛрдВ" рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛, рдЕрд░реНрдерд╛рддреН, рдмрд╕ рдЕрдиреНрдп рдЕрдХреНрд╖рд░реЛрдВ рдХреЗ рд╕рд╛рде (рдмрд╣реБрдд рдХрдо рдЕрдХреНрд╕рд░ - рд╕рдВрдпреЛрдЬрди)ред
рдореИрдВрдиреЗ рд░реВрд╕реА рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП "рдзреНрд╡рдиреНрдпрд╛рддреНрдордХ рдкрддреНрд░рд╛рдЪрд╛рд░" рдХреА рдПрдХ рд╕рдорд╛рди рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рдореБрдЭреЗ рдирд┐рдореНрди рдЬреИрд╕рд╛ рдХреБрдЫ рдорд┐рд▓рд╛ (рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ):
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рджреЛрд╣рд░реЗ рд╡реНрдпрдВрдЬрдиред рд╣рдо рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВ, рдПрдХ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:
рдмрдм = рдм | kk = рдХреЗ | рдЖрд░рдЖрд░ = рдЖрд░ |
cc = c | ll = l | ss = s |
dd = d | рдорд┐рдореА = рдПрдо | tt = t |
рдПрдлрдПрдл = рд╡реА | nn = n | zz = z |
hh = рдПрдЪ | рдкреАрдкреА = рдкреА | |
рдЕрдЧрд▓рд╛ - рд╣рд┐рд╕рд┐рдВрдЧ-рд╕реАрдЯреА рдХреА рдПрдХ рдХрд┐рд╕реНрдо:
рд╢ = s | рдЬрд╝рдЪ = рд╕ | рд╕реАрдХреЗ = рдХреЗ |
ch = c | sch = s | рдХреЗрдПрд╕ = рдПрдХреНрд╕ |
рд╢рдВрдЦ = рд╕ | csh = s | ts = c |
рдЬрдЪ = рд╕ | рдЭ = = рдЬрд╝ | tc = c |
рдлрд┐рд░ рд░реВрд╕реА рднрд╛рд╖рд╛ рдХреЗ рдмрд╛рдХреА рдорд╛рд▓рд┐рдХрд╛рдирд╛ рдлрд╝реАрдЪрд░, рдЬреИрд╕реЗ "y", "I", "e", "y", "f", рдЖрджрд┐ред
рдпреБ = рдпреВ | рдЬреЗ = рдИ | рдУрдп = рдУрдп |
рдЬреВ = рдпреВ | ei = рдИрдЖрдИ | рдУрдЬ = рдУрдЖрдИ |
рдпреВ = рдпреВ | рдЖрдБрдЦ = рдИ | рдл = рдЪ |
рдп = рдЕ | рдИрдЬ = рдИрдЖрдИ | yy = i |
ja = a | рдпреЛ = рдИ | ii = рдореИрдВ |
рд┐рдпрд╛ = рдП | io = рдИ | рдЗрдп = i |
рддреБ = рдИ | рдЬреЛ = рдИ | y = рдореИрдВ |
рдпрд╛рдиреА = рдИ | рдУрд┐ = рдУрд┐ | yy = i |
рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдФрд░ рдЗрддрдиреЗ рдкрд░, рдмрд╛рдХреА:
рдпрд╣реА рд╣реИ, рдЪрд╛рд╣реЗ рдЙрдХреНрдд Scheglov рдХреЛ "Shcheglov", "Scheglov" рдпрд╛ рдпрд╣рд╛рдБ рддрдХ рдХрд┐ "Zchegloff" рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реЛ - рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреА рдорджрдж рд╕реЗ рдЗрд╕реЗ рдЕрд╕реНрдкрд╖реНрдЯ "Seglov" рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдпрд╣ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИред
рдХрдХреНрд╖рд╛ tvoel
рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдбреЗрд▓реНрдлреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдкрддреНрд░рд╛рдЪрд╛рд░ рддрд╛рд▓рд┐рдХрд╛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕реЗ TStringList рдХреА рд╢реАрдЯ рдореЗрдВ рдкрдврд╝реА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдмрд╛рдЗрдирд░реА рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдЫрд╛рдВрдЯрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЦреЛрдЬ рд▓реЛрдХреЗрдЯ рдлрд╝рдВрдХреНрд╢рди рдХрд░рддрд╛ рд╣реИред рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЖрдо рдХреЗ рд▓рд┐рдП рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
type TVoel = class private FFileName: String; FList: TStrings; procedure setFileName(const Value: String); procedure readFile; function isReady: Boolean; function Locate(const Value: String; var Index: Integer): Boolean; public constructor Create; destructor Destroy; override; function Convert(const Value: String): String; property FileName: String read FFileName write SetFileName; end; implementation function TVoel.Convert(const Value: String): String; var ii, p, len: Integer; str: String; Ch: String; found: Boolean; begin Result := ''; len := Length(Value); ii := 0; while ii < len do begin Inc(ii); Ch := Value[ii]; found := Locate(Ch, p); if found then begin str := Value[ii]; while found and (ii < len) do begin Inc(ii); str := str + Value[ii]; found := Locate(str, p); end; if not found then begin setlength(str, length(str)-1); Dec(ii); end; if CompareText(str, FList.Names[p]) = 0 then Ch := FList.ValueFromIndex[p]; end; Result := Result + Ch; end; Result := ANSIUpperCase(Result); end;
рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдЙрдкрд░реЛрдХреНрдд рд╡рд░реНрдЧ рдХреЛ рд╣рдЬрд╛рд░реЛрдВ рд▓реЛрдЧреЛрдВ рдХреА рдорд╛рдореВрд▓реА рд╕реВрдЪреА рдкрд░ "рдзреНрд╡рдиреНрдпрд╛рддреНрдордХ рддрд╛рд▓рд┐рдХрд╛" рдХреЛ "рдбреАрдмрдЧ" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдЕрдВрддрд┐рдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред