CREATE OR REPLACE FUNCTION "ZLSPELLCODE" (v_Instr In Varchar2,v_OutNum In Integer:=10)
Return Varchar2 Is
v_Spell Varchar2(40);
v_Input Varchar2(1000);
v_Bitchar Varchar2(2);
v_Bitnum Integer;
v_Chrnum Integer;
v_OutMaxNum Integer;
v_Stdstr Varchar2(50) := '芭擦搭蛾发噶哈击-喀垃妈拿哦啪期然撒塌挖-挖昔压匝';
v_Chara Varchar2(2000) := '吖锕錒嗄锿鎄捱嗳躷﨟譪霭靄砹嗌嫒暧瑷賹鴱譺鑀鱫靉桉庵谙誝鞌諳闇鮟鵪韽鶕雸埯铵隌揞銨犴豻貋錌黯醠坳軪隞嗷廒獒遨謷鳌鏖鰲鷔鼇拗媪镺岙骜謸鏊鹌聱螯';
v_Charb Varchar2(2000) := '岜粑釟豝鲃魞茇釛菝軷颰魃鼥钯鈀跁鲅鮁灞掰捭呗鞁贁韛頒辬阪坂钣舨鈑魬闆鉡靽辦浜邫鞤蒡謗鎊勹孢煲龅闁齙葆飹飽鳵鴇賲靌趵铇鉋靤鮑鑤陂鵯鉳貝邶悖鄁軰碚蓓誖輩鋇鞴鐾贲逩賁锛錛畚坌輽閍嘣鞛逬跰甏镚鏰豍鲾鎞鵖鰏荸匕吡妣秕俾舭貏诐邲畀哔荜狴铋婢庳萆閇閉弼愎貱赑滗跸鉍閟飶鄪嬖薜鮅濞蹕鞞髀璧鄨襞鏎鞸韠躃躄魓贔鐴鷝鷩鼊砭煸邉鍽鳊邊鯾鯿匾貶碥鴘弁忭汴苄釆拚缏閞辡頨辧辪辮辯變灬杓飑髟颮骠麃镖飙飚颷謤贆鏢镳飆飇飈飊鑣婊諘錶鳔鰾鱉鼈龞蹩邠傧缤槟豩賓賔镔豳霦鑌顮殡膑髌鬓鬢冫鋲邴陃禀鈵鉼鞆餅餠摒誁鮩靐饽啵鉢餑蹳鱍孛郣亳钹鈸鉑鲌踣鋍镈鮊豰鎛鵓礴鑮跛簸擘檗譒逋钸晡鈽誧餔轐醭卟鳪鵏鸔钚瓿鈈踄郶鹁瘢癍裱褙褊篦箅筚笾蝙褓裨窆瘭鸨鹎';
v_Charc Varchar2(2000) := '嚓礤遪財跴飡骖黪黲粲璨謲伧鸧鶬鑶賶嘈漕艚鏪艹鄵鼜恻岑涔噌杈馇銟锸鍤鎈猹靫槎檫蹅镲鑔汊姹钗釵侪辿觇鋓婵孱禅誗鋋廛潺鄽镡酁躔镵讒鑱谄蒇諂閳冁醦譂鏟闡讇忏羼韂顫伥娼菖阊锠錩閶鲳鯧鼚苌長镸徜嫦鋿鲿鏛鱨昶惝氅鋹怅鬯誯韔怊焯鈔晁鄛鼌轈鼂謿麨車砗屮坼迠頙抻琛嗔諃賝謓迧宸陳谌軙鈂霃諶麎鷐趻碜踸贂龀趂榇齓齔谶讖阷柽铛赪靗瞠赬頳鏳鏿鐺丞枨郕埕铖塍誠酲鋮鯎哧眵嗤媸誺鴟鵄魑齝麶黐茌赿貾遅趍遟墀踟遲謘豉鉹齒彳叱饬迣敕啻飭傺跮鉓雴遫銐趩鶒鷘忡茺舂憧艟蹖隀铳銃俦帱惆酧雔雠躊醻讎讐醜魗遚樗貙齣刍豠趎鉏鋤雛蹰鶵躕杵楮齭齼亍怵绌豖鄐踀閦諔憷黜搋啜嘬踹巛氚舡遄輲舛钏釧賗鶨闖怆龡陲棰槌錘鎚顀輴鰆鶞陙莼醕錞鯙鶉賰踳踔辶辵逴辍酫趠輟龊齪鑡齱呲趀祠茈辝鈶糍辤飺餈鴜辭鶿鷀跐賜苁枞骢璁鏦淙琮誴賨賩謥楱腠辏輳麁麄麤徂殂猝酢蔟誎趗踧蹙鼀蹴蹵顣汆撺镩躥鑹爨榱鏙璀趡啐悴萃毳顇邨踆忖遳蹉醝嵯矬鹾鹺齹脞厝逪锉銼錯澶瘥隹篪笞蚩虿耖皴褫褚裎衩瘳蟾螬螭蝽蜍蛏瘛痤鸱骣鹚鹑膪';
v_Chard Varchar2(2000) := '哒耷嗒鎝迏迖妲怛沓逹達跶靼鞑鎉躂鐽韃龖龘呔轪岱甙绐迨玳軑埭軚貸軩鮘鴏黛蹛霴黱靆眈躭酖殚鄲頕儋黕啖萏誕澹鴠贉霮谠譡黨讜凼宕砀菪逿雼趤闣刂叨忉氘釖鱽魛陦﨩隝隯焘軇纛锝鍀豋噔簦戥鄧隥嶝磴镫鐙羝隄趆嘀镝鍉鞮鏑籴荻觌靮頔魡豴鸐氐诋邸阺坻柢砥軧骶鯳娣逓谛釱棣睇遞鉪碲遰諦踶嗲蹎巅顚顛齻踮點阽坫玷钿鈿電簟貂鳭鮉鲷鼦鯛鵰釣铞鈟銱雿調鋽鑃垤喋堞揲趃牒镻諜蹀鲽鰈仃玎酊釘靪頂鼑鐤飣啶腚碇錠顁铥颩銩咚岽氡鮗鼕鯟鶇鶫諌垌峒胨迵胴硐霘蔸阧钭﨣鈄郖鬥酘閗鬦鋀餖闘鬪鬬鬭阇嘟醏闍渎椟牍読錖黩讀豄贕韣髑鑟韇韥黷讟賭芏靯鍍鍴椴煅鍛躖頧鴭鐜怼陮隊碓憝镦譈鐓譵礅蹾盹趸躉沌炖砘逇鈍頓遯踲咄铎鈬踱鮵鐸哚缍趓躱軃鬌沲陊陏跢跥飿鵽瓞簖篼箪蚪聃耵耋褡裰裆窦癫癜瘅笪笃蠹疸疔鸫';
v_Chare Varchar2(2000) := '屙迗莪鈋锇誐鋨頟魤額鵝鵞譌婀鵈阨呃苊阸轭垩谔軛阏愕萼豟軶遌腭锷遻頞餓噩諤閼鍔鳄顎鰐鶚讍鑩齶鱷蒽摁鞥陑輀鲕隭鮞鴯轜迩珥铒鉺餌邇趰佴貮貳鸸颚鹗';
v_Charf Varchar2(2000) := '醗垡閥砝鍅幡轓颿飜鱕釩蕃燔蹯蘩鐇鷭辺畈軓梵販軬飯飰匚邡枋钫趽鈁錺鴋鲂魴彷舫鶭妃飛绯扉靟霏鲱鯡飝淝腓悱斐榧翡誹狒費镄鼣鐨靅玢躮鈖雰棼隫魵鳻豮鼢鼖豶轒鐼黂黺偾鲼瀵鱝沣砜風葑鄷鋒豐鎽鏠酆靊飌麷唪諷俸赗鳯鳳鴌賵雬鴀邞呋趺酜麸稃跗鈇鄜豧鳺麩麬麱凫孚芙芾怫绂绋苻祓罘茯郛韨鳬砩莩匐桴艴菔﨓鉘鉜颫鳧韍幞鴔諨踾輻鮄鮲黻鵩鶝呒拊郙釡滏輔鬴黼阝驸負陚鲋赙賦輹鮒賻鍑鍢鳆鰒馥篚蚨蜚蝠缶蝮蜉痱';
v_Charg Varchar2(2000) := '旮伽钆尜釓錷尕尬魀郂陔垓赅隑豥賅賌鎅丐鈣戤迀坩泔苷酐尴鳱魐秊澉趕橄擀鳡鱤旰矸绀淦贛阬罡釭鋼鎠戆槔睾韟鷎鼛鷱杲缟槁藁鎬诰郜锆誥鋯圪纥閤鴐鴚謌鴿鎶鬲嗝塥搿膈閣镉鞈韐骼諽輵鮯鎘韚轕鞷鰪哿舸硌鉻哏亘艮茛赓鹒賡鶊郠哽绠鲠鯁肱觥躳龏龔廾珙輁鞏貢贑佝缑鈎鉤鞲韝岣枸豿诟媾彀遘雊觏購轱菰觚軱軲酤毂鈲鮕鴣轂鹘鶻汩诂牯罟逧钴鈷鼔嘏臌瞽鵠崮梏牿锢頋錮鲴鯝顧胍颪趏銽颳鴰呱卦诖倌関闗鳏關鰥鱞輨錧躀鳤掼涫貫遦盥雚鏆鑵鸛鱹咣桄胱輄銧黆犷妫邽郌閨鲑鮭龜鬶鬹蘒宄庋匦陒軌晷刿炅貴鳜鞼鱖鱥丨衮绲磙輥鲧鮌鯀謴呙埚崞鈛鍋帼掴虢馘猓椁輠餜鐹過簋篝筻笱蝈蜾蛄蚣虼聒矜袼疳鹳鹄痼鸹鸪皈';
v_Charh Varchar2(2000) := '铪鉿嗨胲酼醢餀頇谽魽鼾邗晗焓鋡韓豃鬫闬菡釬閈撖銲鋎頷顄譀雗瀚鶾魧迒绗貥頏沆蒿嚆薅嗥濠譹昊灏顥鰝诃嗬劾郃曷盍龁貈鉌阖鲄閡鹖麧頜翮魺闔鞨齕鶡鑉龢隺賀壑鶴齃靍靎鸖靏黒鞎桁珩鸻鴴鵆蘅鑅訇軣谾薨輷鍧轟闳泓荭谹鈜閎谼鉷鞃魟鋐蕻霐黉霟鴻黌讧閧銾闀闂鬨齁銗糇骺鍭鯸郈後逅鄇堠豞鲎鲘鮜鱟烀轷唿惚軤雽滹雐謼囫斛猢煳槲魱醐頶觳鍸鬍鰗鶘鶦鶮浒琥錿鯱冱岵怙戽祜扈鄠鳸鍙護鳠韄頀鱯鸌誮錵骅铧鋘譁鏵鷨桦諙諣黊踝鴅鵍酄獾貛讙郇洹萑雈貆锾阛寰缳還豲鍰镮鹮轘闤鐶鬟輐奂浣逭漶鲩擐鯇鯶鰀肓隍黃徨湟遑潢锽璜諻鍠鳇趪韹鐄鰉鱑鷬謊鎤诙咴晖珲豗隓輝麾隳鰴洄茴迴逥鮰譭哕浍荟恚桧彗喙缋阓賄誨蕙諱頮譓譮鏸闠鐬靧韢譿顪阍閽馄餛轋鼲诨溷諢锪劐鍃攉邩钬鈥夥閄貨嗀謋雘镬嚯藿鑊靃皓篌篁蚝虺颢颔颌颃顸耠癀笏蠖蟪蟥蚵蚶瘊鹱鹕瓠';
v_Charj Varchar2(2000) := '丌叽乩玑芨矶咭剞唧屐飢嵇犄赍跻鳮銈畿賫躸齑墼錤隮羁賷鄿雞譏韲鶏譤鐖躋鞿鷄齎鑇鑙齏鸄岌亟佶郆﨤谻戢殛楫蒺趌銡蕺踖鞊鹡輯蹐鍓轚鏶霵鶺鷑躤雦雧掎鱾戟嵴麂魢彐芰哜洎觊偈跡際暨誋跽霁鲚諅鲫髻鮆蹟鯽鵋齌骥鯚鱀霽鰶鰿鱭迦浃珈袈葭跏鉫镓豭貑鎵麚岬郏郟恝戛铗跲餄鋏頬頰鴶鵊胛賈鉀戋菅豜湔犍間靬搛缣蒹豣鲣鳽鋻鞬麉鞯鳒鵳鰔譼鰜鶼韀鰹鑯韉囝枧趼睑锏谫戬翦謇蹇謭鬋鰎鹸鐗鐧鹻譾鹼牮谏釼楗毽腱跈閒賎僭諓賤趝踐踺諫鍵餞鍳鏩轞鑑鑒鑬鑳茳豇缰鳉礓韁鱂講顜洚绛犟醤糨醬謽艽姣茭跤僬鲛鮫鵁轇鐎鷦鷮佼挢湫敫賋踋鉸餃徼鵤譑鱎峤較噍趭轎醮譥釂階喈嗟鞂鶛卩孑讦诘拮迼桀婕鉣魝碣鲒羯誱踕頡鍻鮚飷骱誡魪钅釒鹶黅卺堇廑馑槿瑾錦謹妗荩赆進缙觐噤賮贐齽泾旌菁腈鵛鯨鶁鶄麖鼱麠阱刭肼儆憬頸弪迳胫逕婧靓獍誩踁頚靚靜鏡冂扃迥逈颎顈赳阄啾鳩鬏鬮镹韮柩桕僦鯦麔齨鷲苴陱掬椐琚趄跔锔雎諊踘鋦鮈鴡鞫鶋郹輂跼趜躹閰橘鵙蹫鵴鶪鼰鼳莒榉榘龃﨔踽齟讵苣邭钜倨犋跙鉅飓豦屦鮔遽鋸颶瞿貗躆醵鐻涓鋑鋗镌鎸鵑鐫蠲锩錈桊狷隽鄄雋飬餋噘孓珏崛桷觖赽趹逫厥趉鈌劂谲獗蕨鴂鴃噱橛镼镢譎蹶蹷鶌矍鐍鐝爝鷢龣貜躩钁軍鈞銁銞鲪麇鍕鮶麏麕陖捃餕鵔鵕鵘稷鹣疖瘕筠笈蛟蛱蚧虮颉皲裾裥袷衿窭瘠痂鹫笳笕笄耩鹪鸠皎';
v_Chark Varchar2(2000) := '咔佧胩鉲锎開鐦剀垲恺闿铠蒈輆锴鍇鎧闓颽忾鎎龛戡龕侃莰輡轁顑轗阚瞰闞躿鏮鱇伉邟闶钪鈧閌尻栲铐犒銬鲓鮳鯌珂轲趷钶軻稞鈳瞌頦醘顆髁岢恪氪骒缂嗑溘锞課錁豤貇錹铿誙銵鍞鏗倥崆躻躼錓鵼鞚芤眍叩釦蔻鷇刳郀堀跍骷鮬绔喾誇侉銙蒯郐哙狯脍鲙鄶鱠髋鑧诓邼哐誆軭诳軖軠誑鵟夼邝圹纩贶貺軦鉱鋛鄺黋鑛悝闚顝逵鄈頄馗喹揆暌睽頯鍨鍷夔躨跬頍蹞匮喟愦蒉謉鐀鑎琨锟髡鹍醌錕鲲鯤鵾鶤悃阃閫閸栝頢闊鞟韕霩鞹鬠疴蛞篑箜筘蝌蝰颏裉窠聩';
v_Charl Varchar2(2000) := '邋旯砬剌辢鬎镴鯻鑞鞡崃徕涞郲逨铼錸鯠鶆麳赉睐賚濑賴頼顂鵣籁岚斓镧闌譋讕躝鑭钄韊榄漤罱醂啷郎郞莨稂锒郒躴鋃鎯阆誏閬蒗唠崂铹醪鐒顟栳铑銠鮱轑軂仂阞叻泐韷鳓鰳餎嫘缧檑羸鐳轠鑘靁鱩鼺诔誄讄鑸鸓酹銇頛頪錑颣類嘞塄踜愣骊喱缡蓠嫠貍鋫鲡罹錅謧醨藜邌釐離鯏鏫鯬鵹黧鑗鱺鸝礼俚娌逦锂豊裏鋰澧鯉醴鳢邐鱧呖坜苈戾枥俪栎赲轹郦猁砺莅唳粝詈跞雳溧鉝鳨隷鴗隸麗酈鷅麜躒轢讈轣靂鱱靋奁連鲢濂臁蹥謰鎌譧鬑鐮鰱琏蔹鄻娈殓楝潋錬鍊鏈鰊凉椋辌墚踉輬魉魎輌諒輛鍄蹽嘹寮獠缭遼豂賿蹘鐐飉鷯钌釕鄝蓼镽尥咧冽洌迾埒捩趔颲鮤鴷躐鬛鬣鱲啉粼鄰隣隣嶙遴辚瞵麐轔鏻麟鱗廪懔檩顲賃蔺膦閵蹸躏躙躪轥囹泠苓柃瓴鸰棂绫翎跉軨鈴閝輘霊錂霗魿鲮鴒鹷霛霝齢酃鯪齡醽靈麢龗阾領呤熘浏旒遛骝飗镏鹠镠鎏鎦麍鏐飀鐂飅鰡鶹绺锍鋶蹓霤雡飂鬸鷚泷茏栊珑胧砻龍鏧霳龒龓豅躘鑨靇鸗垅隴贚偻喽蒌遱謱軁髅鞻嵝镂鏤噜撸垆泸栌胪轳舻鈩鲈魲轤鑪顱鱸鸕黸鹵魯橹镥鏀鐪鑥辂陸渌逯賂輅漉趢踛辘醁錄録錴璐鴼蹗轆鏕鯥鵦鵱鏴鷺氇闾榈閭鷜郘稆膂鋁鑢栾脔銮鵉鑾鸞釠锊鋝鋢囵陯踚輪錀鯩論捋頱猡脶椤镙鏍邏鸁鑼倮躶蠃泺荦珞摞漯雒鮥鸬鹩簏篥笠蠡蠊蝼螂蜊蛉蛎聆癞癃瘰瘘瘌痨疬疠鹭鹨鸾耧耢耒褴褛裣裢鹂';
v_Charm Varchar2(2000) := '嬷犸遤鎷鷌鰢杩閁唛鬕霾荬買鷶劢麥賣邁霡霢顢鞔鳗鬗鬘鰻鏋鄤墁幔缦熳镘謾鏝邙硭釯铓鋩漭貓牦旄軞酕髦錨鶜峁泖茆昴鉚耄袤貿鄚瑁瞀鄮懋莓郿嵋湄猸楣镅鋂鎇鶥黴浼躾鎂黣跊鬽韎魅扪钔門閅鍆焖懑雺甍瞢鄳鄸朦礞鯍艨鹲靀顭鸏勐艋錳懵鯭鼆霥霿踎咪祢猕謎縻麊麋麛蘼镾醾醿鸍釄芈弭敉脒銤冖糸汨宓谧嘧鼏謐宀沔黾眄湎腼鮸靣麪麫麺麵喵鶓鱙杪眇淼缈邈乜咩鴓鑖鱴岷玟苠珉缗鈱賯錉鴖鍲闵泯閔愍黽閩鳘鰵茗冥鄍溟暝銘鳴瞑酩缪謬谟嫫馍麼麽魹謨謩譕麿殁茉秣貃蓦貊銆靺镆魩黙貘鏌哞侔眸鉾謀鍪鴾麰毪鉧踇仫沐坶苜钼雮鉬霂鞪鹋袂鹛蠓蟊蟆蟒螨蝥蜢蛑虻篾蠛颟耱瘼';
v_Charn Varchar2(2000) := '誽镎鎿雫肭捺豽軜貀鈉靹魶艿迺釢柰萘鼐錼囡喃遖楠諵難赧腩囔鬞馕曩攮齉孬呶硇铙猱譊鐃垴瑙閙鬧讷餒鮾鯘嗯鈪銰坭怩郳铌猊跜鈮貎輗鲵鯢麑齯伲旎鉨隬鑈迡昵睨鲇鮎鲶鵇鯰辇輦蹨躎廿埝醸釀茑袅鳥嬲脲肀陧臬隉嗫鉩踂踗踙錜蹑鎳闑蘖齧讘躡鑷顳钀咛鑏鬡鸋佞甯妞忸狃鈕靵侬哝農辳醲齈譨鎒鐞譳孥驽弩胬钕釹恧衄黁郍傩喏逽搦锘諾蹃鍩黏颞聍耨衲蝻蛲';
v_Charo Varchar2(2000) := '噢鞰讴瓯鴎謳鏂鷗齵怄耦';
v_Charp Varchar2(2000) := '葩杷俳輫哌蒎鎃爿跘蹒蹣鎜鞶泮頖鋬鵥鑻雱滂霶逄鳑龎龐鰟脬庖狍匏軳鞄麅麭醅阫陫锫賠錇帔旆辔霈轡湓怦軯閛嘭堋輣錋韸韼鵬鬔鑝踫闏丕纰邳铍豾釽鈚鈹鉟銔噼錃錍魾闢阰芘枇郫陴埤豼鲏罴隦魮鮍貔鵧鼙庀仳圮銢諀鴄擗淠媲睥甓鷿鸊犏翩鶣骈胼賆諚蹁谝貵諞魸剽缥飃飄魒闝殍瞟醥顠嘌嫖氕丿苤鐅姘貧嫔頻顰榀牝娉俜頩郱枰軿鲆輧鮃钋釙酦醱鏺鄱謈叵钷鉕珀頗颒掊裒攴攵陠噗鋪鯆匍酺璞濮镤贌鏷溥氆諩镨譜蹼鐠皤疋襻螃蟛筢笸蟠螵蜱蚍颦袢癖疱';
v_Charq Varchar2(2000) := '迉桤郪萋嘁槭諆踦諿霋蹊魌鏚鶈亓圻岐芪耆淇萁跂軝釮骐琦琪祺﨑锜頎鬾鬿綦齊蕲踑錡鲯鳍鯕鵸鶀麒鬐魕鰭麡邔屺芑杞豈绮綮諬闙汔荠葺碛憩葜跒酠鞐髂阡芊佥岍悭谸釺鈆雃愆鉛骞鹐搴諐遷褰謙顅鏲鵮鐱鬜鬝韆荨钤掮軡鈐鉆鉗銭錢鎆黚鰬凵肷慊缱譴鑓芡茜倩椠輤戕戗跄锖锵錆蹌镪蹡鎗鏘鏹嫱樯謒羟炝硗郻鄗跷鄡鄥劁踍頝缲鍫鍬趬蹺蹻鐰荞谯憔鞒樵譙趫鐈鞽顦釥愀诮陗誚韒鞩躈妾挈惬锲魥踥鍥鯜鐑衾誛顉鮼芩鈙雂嗪溱靲噙鳹檎赺赾锓鋟吣揿靑郬圊軽輕鲭鯖鑋檠黥苘頃請謦靘磬跫銎邛茕赹楸鹙趥鳅鞦鞧鰌鰍鶖鱃龝犰俅逎逑釚赇釻巯遒裘賕銶醔鮂鼽鯄鵭鰽糗岖诎阹祛誳麹魼趨麯軀麴黢鰸鱋劬朐軥蕖磲鴝璩鼩蘧氍衢躣鑺鸜齲迲郥阒觑閴麮闃鼁悛鐉诠荃辁铨跧輇銓踡闎鳈鬈鰁齤顴犭畎绻韏悫阕阙趞闋闕鵲逡鸲蝤蜷蜞蜻蜣蛴蛐蛩蚯箝箧箐筌筇罄蠼螓虬虔颀覃襁穹癯';
v_Charr Varchar2(2000) := '髯苒禳躟鬤譲讓荛桡娆隢遶亻鈓魜銋鵀荏稔躵仞讱轫饪恁軔葚靭靱韌飪認餁辸陾釰鈤肜狨嵘榕镕鎔軵糅蹂輮鍒鞣鰇鶔韖邚铷銣鴑嚅濡薷鴽醹顬鱬鄏込洳溽缛蓐鳰朊軟輭蕤芮枘睿銳鋭閏閠偌鄀鰙鰯鶸穰箬蝾蚺蚋颥衽襦';
v_Chars Varchar2(2000) := '仨靸卅钑飒脎鈒隡颯噻顋鰓賽毵鬖糁馓鏒閐搡磉鎟顙缫臊鳋颾鰠鱢埽啬铯雭銫轖鏼譅飋鬙閪铩裟魦鲨閷鎩鯊鯋唼歃閯霎彡邖芟姗钐埏舢軕釤閊跚潸膻鯅陝閃讪剡赸銏骟鄯嬗謆譱贍鐥鳝鱓鱔殇觞熵謪鬺垧賞鑜绱艄輎颵鮹苕劭潲猞畲輋賒賖佘厍滠韘麝诜鲹鯓鵢鯵鰺鉮鰰邥哂矧谂谉渖諗頣魫讅胂椹鋠阩陞陹﨡鉎鍟鼪鵿渑譝鱦眚晟貹嵊賸邿鸤釶蓍鉇酾鳲鳾鲺鍦鯴鰤鶳釃饣辻飠炻埘莳遈鉐鉽鲥鮖鼫識鼭鰣豕鉂礻贳轼铈釈弑谥貰軾鈰鉃飾適銴諟諡遾餝謚釋鰘齛扌艏狩绶鏉殳纾陎姝倏菽軗鄃摅毹跾踈輸鮛鵨秫塾贖鼡鱪鸀鱰沭腧鉥澍豎錰鏣鶐鶑唰誜闩閂涮﨎雙孀鷞鹴鸘鏯誰氵閖順鬊說説妁铄嗍搠蒴槊鎙鑠厶纟咝缌鉰飔厮銯锶澌鋖鍶颸鐁鷥鼶汜兕姒祀泗驷俟飤釲貄鈻飼忪凇崧淞菘嵩悚頌誦鎹鄋嗖溲馊飕锼醙鎪颼叟嗾瞍薮稣鯂夙涑谡嗉愫遡鹔蔌觫趚遬鋉餗謖蹜鱐鷫狻荽眭睢濉鞖雖遀隨谇誶賥燧邃鐆譢鐩狲荪飧飱隼榫鎨鶽娑挲桫睃嗦羧趖鮻唢鎍鎖鎻鎼鏁逤穑鸶疝痧筮笥笙舐蟮蟀螫螋蛸簌筲蜃蛳颡耜竦瘙';
v_Chart Varchar2(2000) := '趿铊溻鉈蹹鮙鳎鰨闼遝遢阘榻誻錔鞜闒鞳闥譶躢骀邰炱跆鲐颱鮐薹肽钛鈦貪昙郯锬談醈錟顃譚貚醰譠鷤忐钽鉭醓赕賧铴羰镗蹚鏜鐋鞺鼞饧鄌溏隚瑭樘踼赯醣鎕闛鶶帑傥镋鎲钂韬飸謟鞱韜饕迯洮啕鞀醄鞉鋾錭鼗忑忒貣铽慝鋱鼟滕邆謄鰧霯銻鷈鷉绨缇遆趧醍謕蹏鍗鳀鴺題鮷鵜鯷鶗鶙躰軆倜悌逖逷鐟趯酟靔黇靝畋阗鴫闐鷆鷏忝殄餂賟錪靦掭佻祧龆鋚鞗髫鲦鯈鎥齠鰷誂粜铫趒頫萜貼跕鉄銕鴩鐡鐢鐵飻餮町鞓邒莛婷葶閮霆諪鼮梃铤颋誔鋌頲嗵仝佟茼砼赨鉖僮鉵銅餇鲖潼鮦恸鍮亠骰頭黈鋵鵚鼵荼鈯跿酴鍎鵌鶟鷋鷵钍釷迌堍菟鵵貒抟鏄鷒鷻疃彖隤頹頺頽魋蹪蹆煺暾黗饨豘豚軘飩鲀魨霕氽乇讬飥魠佗陁坨沱迱柁砣跎酡踻橐鮀鴕鼧鼍鼉庹鵎鰖柝跅鹈窕箨笤螳螗蜩蜓耥裼';
v_Charw Varchar2(2000) := '娲鼃佤邷腽韈韤崴顡剜纨芄貦頑邜莞绾脘菀琬畹輓踠鋔鍐鋄錽贃鎫贎罔惘辋誷輞魍迋偎逶隇隈葳煨薇鳂鰃鰄囗圩帏沩闱韋涠帷嵬違鄬醀鍏闈鮠霺霻炜玮洧娓诿隗猥艉韪鲔諉踓韑頠鍡鮪韙颹韡軎猬謂錗鮇轊鏏霨鳚讆躗讏躛辒豱輼轀鳁鎾鰛鰮阌鈫雯魰鳼鴍閺閿闅鼤闦闧刎汶顐璺鹟鎓鶲蓊蕹齆倭莴喔踒肟幄渥硪龌齷圬邬趶釫鄔誈誣鴮鎢鰞郚唔浯鹀鵐鯃鼯鷡仵妩庑忤怃迕牾錻鵡躌兀兀阢杌芴逜焐婺隖靰骛寤誤鋈霚鼿霧齀鶩鹉蜿蜈痿痦鹜';
v_Charx Varchar2(2000) := '兮诶郗唏奚浠欷淅菥赥釸粞翕舾鄎僖誒豨餏嬉餙樨歙熹羲錫谿豀豯貕雟鯑鵗譆醯鏭隵曦酅鼷鸂鑴郋觋趘隰謵鎴霫鳛飁鰼玺徙葸鈢屣蓰銑禧諰謑蹝鱚躧饩郄郤釳阋舄趇禊赩隟黖鬩闟霼呷谺閕颬鰕狎柙陜硖陿遐瑕赮魻轄鍜鎋黠鶷閜諕鏬氙祆籼莶铦跹酰銛暹韯鍁鍂韱鮮蹮譣鶱躚鱻娴閑銜誸賢諴輱醎鹹贒鑦鷳鷴鷼冼猃険赻跣險藓鍌燹顕韅顯岘苋陥誢鋧錎豏麲鏾霰鼸芗郷鄉鄊缃葙鄕骧麘鱜鑲庠跭饷飨銄餉鲞鮝鯗響鱶項鐌鱌枭哓枵骁绡逍鸮潇踃銷魈鴞謞鴵鷍郩崤誵謏誟﨧偕勰撷缬諧鞵鐷讗龤绁亵渫榍榭韰廨獬薤邂燮謝鞢瀣齘齥齂躠躞忄邤昕莘鈊歆鋅馨鑫鬵鐔阠囟軐顖釁謃鮏鯹陉郉钘陘硎铏鈃鉶銒鋞擤荇悻﨨芎讻诇咻庥貅馐銝髹鎀鮴鵂鏅飍岫溴銹鏥鏽齅盱砉顼谞須頊魆諝譃魖鑐鬚诩栩鄦糈醑洫勖溆煦賉銊鱮蓿軒谖揎萱暄煊儇諠諼鍹譞鰚讂漩璇選泫炫铉渲楦鉉碹镟鞙颴鏇贙辥鞾泶鸴踅雤鷽轌鳕鱈谑趐謔埙獯薰曛醺峋恂洵浔荀鄩鲟鱏鱘徇迿巽遜賐蕈顨鑂皙箫筱筅罅蟓蟋螅蜥蚬胥穸痫痃鹇鸺';
v_Chary Varchar2(2000) := '压桠铔鴉錏鴨鵶鐚伢岈琊睚齖迓垭娅砑氩揠齾恹胭崦菸湮腌鄢嫣醃閹黫讠闫妍芫郔閆閻檐顏顔麙鹽麣兖俨偃厣郾酓琰遃隒罨魇躽黡鰋鶠黤齞龑黬黭顩鼴魘鼹齴黶晏隁焱滟鳫酽谳餍鴈諺赝鬳鴳酀贋軅醶鷃贗贘讌醼鷰釅讞豓豔泱鉠雵鞅鍈鴦阦炀钖飏徉烊陽諹輰鍚鴹颺鐊鰑霷鸉軮養怏恙幺夭吆鴁爻肴轺珧軺徭遙銚飖餆餚繇謠謡鎐鳐颻顤鰩杳崾鴢闄齩鷕靿鼼曜鷂讑鑰揶铘釾鋣鎁邺頁晔烨谒鄓鄴靥謁鍱鎑鵺靨鸈辷咿猗郼欹漪銥噫鹥醫黟譩鷖黳圯诒怡迤饴咦荑贻迻眙酏貽誃跠頉飴遺頤頥嶷顊鮧謻鏔讉鸃迆钇苡舣釔逘鈘鉯鳦旖輢顗轙齮弋刈仡阣佚呓佾峄怿驿奕弈羿轶悒挹貤陭埸豙豛釴隿跇軼鈠缢靾熠誼镒鹝鹢黓劓殪薏翳貖鮨贀鎰镱豷霬鯣鶂鶃鶍譯議醳醷鐿鷁鷊懿鷧鷾讛齸阥洇氤陰铟陻隂喑堙銦鞇諲霒闉霠韾垠狺鈝龂鄞夤誾銀龈霪齗齦鷣廴吲釿鈏飲隠靷飮趛隱讔茚胤酳鮣莺瑛锳嘤撄賏璎霙鴬膺韺鎣鶧譻鶯鑍鷪軈鷹鸎鸚茔荥萦楹滢蓥潆嬴謍瀛贏郢颕頴鐛媵鞕譍唷邕鄘墉慵銿壅郺镛雝鏞鳙饔鱅鷛喁颙顒鰫俑鲬踴鯒醟攸呦麀鄾尢柚莜莸逌郵逰遊鱿猷鈾鲉輏魷輶鮋邎卣莠铕銪牖黝侑囿宥迶貁酭誘鼬纡迃陓邘妤欤於臾禺舁狳谀酑馀萸釪隃雩魚嵛揄腴瑜觎諛雓餘魣踰輿鍝謣鮽鯲鰅鷠鸆伛俣圄圉庾鄅铻語鋙龉貐麌齬聿妪饫昱钰﨏谕逳阈飫煜蓣鈺預毓輍銉隩遹鋊鳿燠諭錥閾鴥鴧鴪魊醧鵒譽轝鐭霱鬻鱊鷸鸒軉鬰鬱眢鹓鳶鋺鴛鵷鼘鼝贠邧沅爰貟酛鈨鼋塬魭圜橼謜轅黿鎱邍鶢鶰逺遠垸媛掾瑗願刖軏钺跀鈅鉞閱閲樾龠瀹黦躍鸑龥鸙赟頵贇纭芸昀鄖雲氲鋆阭狁殒鈗隕霣齫齳郓恽鄆愠運韫熨賱醖醞韗韞韻甬鹦痖瘀螈蝣蝓蜴蜮蛘蚴蚰蚓颍窳箢筵竽罂窨窬窈翊癔瘾瘿瘗瘐痍疣鹬鹞鹆鸢';
v_Charz Varchar2(2000) := '卮仄赜仉伫侏倬偬俎冢诏诤诹诼谘谪谮谵阼陟陬郅邾鄣鄹圳埴芷苎茱荮菹蓁蕞奘拶揸搌摭摺撙擢攥吒咂咤哳唣唑啧啭啁帙帻幛峥崽嵫嶂徵獐馔忮怍惴浈洙浞渚涿潴濯迮彘咫姊妯嫜孳驵驺骓骘纣绉缁缒缜缯缵甾璋瓒杼栉柘枳栀桎桢梓棹楂榛槠橥樽轵轸轾辄辎臧甑昃昝贽赀赈肫胄胙胗胝朕腙膣旃炷祉祚祗祯禚恣斫砟砦碡磔黹眦畛罾钊钲铢铮锃锱镞镯锺雉秭稹鸩鸷鹧痄疰痣瘃瘵窀褶耔颛蚱蛭蜇螽蟑竺笊笫笮筝箦箸箴簪籀舯舳舴粢粽糌翥絷趱赭酎酯跖踬踯踵躅躜豸觜觯訾龇錾鲰鲻鳟髭麈齄';
Begin
If v_OutNum<1 Or v_OutNum>40 Then
v_OutMaxNum:=10;
Else
v_OutMaxNum:=v_OutNum;
End If;
If v_Instr Is Null Or Length(Ltrim(v_Instr)) = 0 Then
v_Spell := '';
Else
v_Input := Upper(v_Instr);
v_Spell := '';
For v_Bitnum In 1 .. Length(v_Input) Loop
v_Bitchar := Substr(v_Input, v_Bitnum, 1);
If v_Bitchar >= '啊' And v_Bitchar <= '座' Then
For v_Chrnum In 1 .. Length(v_Stdstr) Loop
If Substr(v_Stdstr, v_Chrnum, 1) = '-' Then
Null;
Elsif v_Bitchar < Substr(v_Stdstr, v_Chrnum, 1) Then
v_Spell := v_Spell || Chr(64 + v_Chrnum);
Exit;
End If;
End Loop;
If v_Bitchar >= '匝' Then
v_Spell := v_Spell || 'Z';
End If;
Elsif Instr('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.+-*/', v_Bitchar) > 0 Then
v_Spell := v_Spell || v_Bitchar;
Elsif Instr('ⅠⅡⅢⅣⅤⅥⅦⅧⅨ', v_Bitchar) > 0 Then
v_Spell := v_Spell || Chr(Ascii(v_Bitchar) - 41664);
Elsif Instr('ABCDEFGHIJKLMNOPQRSTUVWXYZ',v_Bitchar) > 0 Then
v_Spell := v_Spell || Chr(Ascii(v_Bitchar) - 41856);
Elsif Instr('Αα', v_Bitchar) > 0 Then
v_Spell := v_Spell || 'A';
Elsif Instr('Ββ', v_Bitchar) > 0 Then
v_Spell := v_Spell || 'B';
Elsif Instr('Γγ', v_Bitchar) > 0 Then
v_Spell := v_Spell || 'G';
Elsif Instr(v_Chara, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'A';
Elsif Instr(v_Charb, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'B';
Elsif Instr(v_Charc, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'C';
Elsif Instr(v_Chard, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'D';
Elsif Instr(v_Chare, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'E';
Elsif Instr(v_Charf, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'F';
Elsif Instr(v_Charg, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'G';
Elsif Instr(v_Charh, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'H';
Elsif Instr(v_Charj, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'J';
Elsif Instr(v_Chark, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'K';
Elsif Instr(v_Charl, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'L';
Elsif Instr(v_Charm, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'M';
Elsif Instr(v_Charn, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'N';
Elsif Instr(v_Charo, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'O';
Elsif Instr(v_Charp, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'P';
Elsif Instr(v_Charq, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'Q';
Elsif Instr(v_Charr, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'R';
Elsif Instr(v_Chars, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'S';
Elsif Instr(v_Chart, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'T';
Elsif Instr(v_Charw, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'W';
Elsif Instr(v_Charx, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'X';
Elsif Instr(v_Chary, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'Y';
Elsif Instr(v_Charz, v_Bitchar) > 0 Then
v_Spell := v_Spell || 'Z';
-- Else
-- v_Spell := v_Spell || '_';
End If;
Exit When Length(v_Spell) > v_OutMaxNum-1;
End Loop;
End If;
Return(v_Spell);
End;