맨 뒤의 g 를 안하면 앞부분만 trim 되고 끝나버린다.$_ = " This is my pen. "; print "[" . mytrim() . "]\n"; sub mytrim {
s/
^
\s+
|
\s+
$
//
g; return $_; }
최적화
속도를 높이려면 다음 코드보다는
s/^\s+|\s+$//g;
다음 코드를 써서 두 스텝으로 실행하는게 빠르다고 한다. s/^\s+//;
s/\s+$//;
그 이유는 ^와 $에 의해 위치가 fixed 되어 있는 regular expression 이 더 효율적으로 동작하기 때문.출처 : Why is s/^\s+|\s+$//g; so much slower than two separate substitutions?
No comments:
Post a Comment