액션 스크립트는 문자열에 대한 Trim 함수를 제공하지 않습니다. 해서 제가 사용하고 있는 Trim 함수를 소개해 드립니다. 재귀호출 함수를 사용해서 그다지 속도는 나질 않지만…. 제가 사용함에 있어서 문제가 없기에 소개해 드립니다.
public class StringHelper { static public function trim(str:String, char:String):String { return trimBack(trimFront(str, char), char); } static public function trimFront(str:String, char:String):String { char = stringToCharacter(char); if (str.charAt(0) == char) { str = trimFront(str.substring(1), char); } return str; } static public function trimBack(str:String, char:String):String { char = stringToCharacter(char); if (str.charAt(str.length - 1) == char) { str = trimBack(str.substring(0, str.length - 1), char); } return str; } static public function stringToCharacter(str:String):String { if (str.length == 1) { return str; } return str.slice(0, 1); } }
사용방법은 StringHelper.trim(” ABC “, ” “)와 같으며 이에 대한 결과는 “ABC”가 됩니다. 참고로 이 함수는 제가 만든 것이 아니고 외국의 블로그에서 발췌해 사용한 것인데… 어느 블로그인지.. 시간이 많이 흘러 알수가 없네요..