기압골의 영향으로 12월 3일은 서울.경기도와 강원영서에 비 또는 눈이, 4일은 제주도에 비가 오겠습니다. <br />그 밖의 예보기간에는 고기압의 가장자리에 들어 가끔 구름이 많겠습니다. <br />기온은 평년(최저기온: -7~4도, 최고기온: 5~13도)보다 조금 낮겠습니다.<br />강수량은 평년(1~3mm)보다 적겠으나, 서울.경기도와 강원영서, 제주도는 비슷하겠습니다. |
기압골의 영향으로 십이월 삼일은 서울.경기도와 강원영서에 비 또는 눈이, 사일은 제주도에 비가 오겠습니다. 그 밖의 예보기간에는 고기압의 가장자리에 들어 가끔 구름이 많겠습니다. 기온은 평년( 최저기온은 마이너스 칠에서 사도, 최고기온은 오에서 십삼도 )보다 조금 낮겠습니다.강수량은 평년( 일에서 삼밀리미터 )보다 적겠으나, 서울.경기도와 강원영서, 제주도는 비슷하겠습니다. |
Javascript 코드
<html> <head> <meta charset="UTF-8"> <title>JS 테스트</title> </head> <script> function viewKorean(num) { var hanA = new Array("","일","이","삼","사","오","육","칠","팔","구","십"); var danA = new Array("","십","백","천","","십","백","천","","십","백","천","","십","백","천"); var result = ""; for(i=0; i<num.length; i++) { str = ""; han = hanA[num.charAt(num.length-(i+1))]; if(han != "") str += han+danA[i]; if(i == 4) str += "만"; if(i == 8) str += "억"; if(i == 12) str += "조"; result = str + result; } result = result.replace("일십", "십"); result = result.replace("일백", "백"); result = result.replace("일천", "천"); return result; } var text = "기압골의 영향으로 12월 3일은 서울.경기도와 강원영서에 비 또는 눈이, 4일은 제주도에 비가 오겠습니다. <br />그 밖의 예보기간에는 고기압의 가장자리에 들어 가끔 구름이 많겠습니다. <br />기온은 평년(최저기온: -7~4도, 최고기온: 5~13도)보다 조금 낮겠습니다.<br />강수량은 평년(1~3mm)보다 적겠으나, 서울.경기도와 강원영서, 제주도는 비슷하겠습니다."; var text = ""; // 태그 제거 var re = /\<br.\/\>/gi; var minus = /(-)(\d+)/gi; var tilde = /(~)(\d+)/gi; var units = /mm/gi; var colon = /\:/gi; var brackets_start = /\(/gi; var brackets_end = /\)/gi; var number_pattern = /\d+/g; text = text.replace(re, "").replace(minus, "마이너스 $2").replace(tilde, "에서 $2").replace(units, "밀리미터").replace(colon, "은").replace(brackets_start, " 대비 ").replace(brackets_end, "로 작년"); var number_string = text.match( number_pattern ); for(var z=0; z<number_string.length; z++) { text = text.replace(number_string[z], viewKorean(number_string[z])); } console.log(text); </script> <body> </body> </html> |