티스토리 뷰

728x90
반응형
머 대충 만들어 봤는데...ㅋ
제대로 되기는 한다....
근데 불안하다....ㅋ
여튼 XML 에서 CDATA로 처리된 node value값이 아니고 attribute 값으로 처리가 되어 있다면
\n , \r, \t, \f 등이 제대로 표현이 안될 수 있다. 그렇기에 보통 toXMLString()으로 처리를 하게 되는데...
그렇게 되면 이스케이프시퀀스가 거지같이 나오게 된다~
머 그러한 코드값에 익숙하지 않기에 거지같은 거겠지만....~씁쓸하구만~
그런 경우 그런 쓰잘데기 없는 이스케이프 시퀀스를 우선 삭제하게끔 아래처럼 static method로 만들어 봤다..
머 삭제가 아닌 치환으로도 메소드를 나중에 만들어야겠다~

                
                /**
		 *  &로 시작하는 (#xA #xD #x9 lt gt nbsp amp)과 2칸이상 되는 공백 제거 해줌~
		 * @param	str 적용할 문자
		 * @return
		 */
		public static function getClearEscapeCode( str:String ):String
		{
			//&로 시작하는 (#xA #xD #x9 lt gt nbsp amp)문자와 
			//최소대응(.*?)의 모든 문자열(\w)에 ;문자로 끝나는 것이 반복됨(g플래그) 검색~
			var regx:RegExp = /&(#x|amp|quot|lt|nbsp|gt).*?\w;/g;
			
			//  2칸이상포함하는 공백 하나이상 찾기
			var regx2:RegExp = /(  )+/g;
			
			var descript:String = str.replace( regx, "" );
			descript=descript.replace( regx2, "" );
			
			return  descript;
		}
728x90
반응형
댓글