You are here

문자열 매칭에 대해 알려주세요~~^^

#[text file1 name: cc]

=======
#name
Lotte/Giants 1000
Lotte/hate 1410
LG/love 1200
SK/love 1110
Lotte/hate 1110
SK/love 1210
SM/Lion 1410
SK/love 1410

==============================================
#[text file2 name: all]
=======
SK/love
Lotte/hate

==============================================
#

=======

set inst_file [open all r]
set f [open cc r]

while {[gets $inst_file line] >=0} {
        lappend instance_list $line
}

close $inst_file

while {[gets $f line] >=0} {

    set time [lindex $line 1]

    if [regexp $instance_list $line] {
            if {$time > 1400}{
             puts $line
            }
    }
}

close $f

============================================

tcl 초심자라 질문드립니다.

위에 보이는것 같이 총 세개의 파일입니다. test.tcl을 run하고 싶구요

 
첫번째 input_file이라 할 수 잇는 all파일의 내용을 instance_list란 배열에 집어 넣고,
두번째 1) input_file이라 할 수 잇는 cc파일의 내용과 instance_list란 배열과 매칭을 시켜 겹치는 부분을 출력하는 스크립트입니다.
(매칭이라하면 배열의 첫번째 원소인 Lotte/hate 부분이 같으면 출력한다 이런건데요..)
       2) 또하나의 조건이 있는데요. 1)의 조건을 만족시키는 녀석들 중... cc란 파일의 배열 두번째 원소인 숫자를 $time으로 setting 해놓고, 그 time1400이 넘어가는 녀석만 출력하는 것입니다.

궁극적으로

제가 원하는 출력은

Lotte/hate 1410
SK/love 1410

입니다.

그런데 궁금한 점은 정규표현식을 사용하여 매칭을 해도 결과가 안나온다는 겁니다.
이런 매칭을 하기 위해서는 어떤 표현식을 사용해야할지 알려주시면 감사하겠습니다. (string first를 써도 string match를 써도 안되서요..)
알려주세요 고수님들~^^