>> Read Reply from No. 20086 article  
RE: [질문] 정규 표현식

등록 2001-02-07 12:38:00     조회 2
이름 무정한    

		: 정규 표현식에 관한 질문입니다.
:
: 문자열중 가장 마지막 "/" 부터 나머지 문자열은 모두 삭제하고 출력하는 방
: 법은 없나입니다.
:
: 예를 들어 /aaa/bbb/ccc 라는 문자열이 있을 때 /aaa/bbb 라고 반환하게 만
: 드는 정규 표현식이 궁금합니다.
 <?
$directory = "/aaa/bbb/ccc";
 $startTime1 = microtime();
$reversedOriginString = strrev($directory);
$reversedString = strstr($reversedOriginString, "/");
$resultString = substr(strrev($reversedString),0,-1);
$endTime1 = microtime();
$processingTime1 = get_microtime($startTime1, $endTime1);
echo "
method 1: using String functions
<ul>
        origin : $directory<br>
        stage1 : $reversedOriginString<br>
        stage2 : $reversedString<br>
        result : $resultString<br>
        processing time = $processingTime1;
</ul>
";
  $startTime2 = microtime();
$resultString = eregi_replace("(/.[^/]*)$","",$directory);
$endTime2 = microtime();
$processingTime2 = get_microtime($startTime2,$endTime2);
echo "
method2 : using eregi_replace
<ul>
        origin : $directory<br>
        result : $resultString<br>
        processing time = $processingTime2
</ul>
";
 $differenceTime = sprintf("%.10f",$processingTime1 - $processingTime2);
$absTime = $differenceTime;
if($differenceTime<0) $absTime = sprintf("%.10f",$differenceTime*(-1));
 echo "
comparision of processing time :
<ul>
        method1 : $processingTime1<br>
        method2 : $processingTime2<br>
";
if($differenceTime<0) $compareString = "method2 is slower than method1 (". $absTime . ")";
else if($differenceTime == 0) $compareString = "method1 is equals to method2";
else $compareString = "method1 is slower than method2 (". $absTime. ")";
 echo "
        $compareString
</ul>
";
 #적수게시판 함수참조
function get_microtime($start, $end) {
  # 주어진 문자열을 나눔 (sec, msec으로 나누어짐)
  $start = explode(" ", $start);
  $end = explode(" ", $end);
   $time[msec] = $end[0] - $start[0];
  $time[sec]  = $end[1] - $start[1];
   if($time[msec] < 0) {
    $time[msec] = 1.0 + $time[msec];
    $time[sec]--;
  }
   $term = sprintf("%.10f", $time[sec] + $time[msec]);
   return $term;
}
?>
 저의 컴퓨터에서의 결과는 다음과 같았습니다.
method 1: using String functions
      origin : /aaa/bbb/ccc
     stage1 : ccc/bbb/aaa/
     stage2 : /bbb/aaa/
     result : /aaa/bbb
     processing time = 0.0000860000;
 method2 : using eregi_replace
      origin : /aaa/bbb/ccc
     result : /aaa/bbb
     processing time = 0.0001170000
 comparision of processing time :
      method1 : 0.0000860000
     method2 : 0.0001170000
     method2 is slower than method1 (0.0000310000)--외로워라 이네몸은 뉘와함께 놀아날꼬.
이름
암호


>> 관련글
20086 [질문] 정규 표현식  초보자  2001.02.07  ....
  답장 RE: [질문] 정규 표현식  무정한  2001.02.07  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 1.77 초 ] 작업시간: [ 1.56 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1789641986
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.