2012-05-16 6 views
1

문제가 있습니다. 나는 내가 오류가있어 0/0/CPU0tcl의 정규 표현식 - 문자열

를 가져올 필요가 regexp의 도움으로 1 변수

set a "mau_gigabitethernet0/0/cpu0/2" 

, "invalid escape \ sequence" 누구든지 나를 도울 수 있습니다 .. ???

답변

4

이 같은 뭔가를보고 싶은데 : 정규 표현식은 중괄호하지 따옴표에 있음을

regexp {(?i)\d+/\d+/cpu\d+} $a extracted 
puts $extracted 

참고. 그것은 중요합니다. (큰 따옴표로 묶인 경우 "(?i)\\d+/\\d+/cpu\\d+"이 부끄럽습니다.) 또한 대소 문자를 구분하지 않는 정규 표현식으로 표시하려면 (?i)을 사용합니다.

+0

'regexp {(? i) pattern}'과'regexp -nocase {pattern}'을 사용하면 어떤 이점이 있습니까? –

+2

@glenn 장점 없음; 대소 문자를 구분하지 않는 것이 패턴의 일부이기 때문에 나는 그것을 이렇게 작성하는 것을 선호합니다. –

+0

@DonalFellows 정말 고마워요 ... 그 일은 ... 내가 실수 한 것을 얻고 있습니다. 나는 특수 문자로 백 슬래시를 사용하고 있습니다. '/'는 '\ /'을 사용하고있었습니다. –

관련 문제