openlang

문자와 숫자가 섞인 문자열에서 숫자 부분만 추출하기

Tcl 초보입니다. 문자열이 "entry_rows_chunk2022vol34i9mn.txt"인데, 숫자만 "2022 34 9" 형태로 출력하고 싶습니다. 어떻게 해야 하나요?

미리 감사드립니다

영어에서 번역원문 보기

이어지는 대화 2

서로의 근거를 따라
  1. 고유 링크

    이런 식으로 해 보세요... regsub command로 숫자가 아닌 문자를 모두 공백으로 바꾸는 방식입니다:

    set inputLine "entry_rows_chunk2022vol34i9mn.txt"
    regsub -all -nocase {[._a-z]} $inputLine { } digitsText
    lassign $digitsText firstNum nextNum lastNum
    puts "result = $firstNum $nextNum $lastNum"
    # result = 2022 34 9

    regexp command를 쓰면 아마 더 간단하겠지만, 아직 그 방법은 알아내지 못했어요.

    참고 문서: regsub (https://www.tcl.tk/man/tcl/TclCmd/regsub.html), lassign (https://www.tcl.tk/man/tcl/TclCmd/lassign.html), regexp (https://www.tcl.tk/man/tcl/TclCmd/regexp.html) (시도해 보고 싶다면요)

    영어에서 번역원문 보기

같은 질문의 다른 갈래

  1. String.Format을 호출할 때 퍼센트 문자는 어떻게 이스케이프하나요?

    strings.xml 파일에 SQL 쿼리를 저장해 두고, 코드에서 String.Format으로 최종 문자열을 만들려고 해요. SELECT 쿼리에는 이런 like 절이 들어 있어요: 서식을 적용하려고 'pattern'을 %1$…

    답글 3최근 활동 java
  2. F#에서 문자열 서식 지정하기

    처음으로 F# 라이브러리를 만들고 있어요 string.Format를 사용하면 그런 함수가 없다는 오류가 나와요. 제가 잘못한 걸까요, 아니면 원래 없는 기능인가요?

    답글 2최근 활동 fsharp
  3. tcl 문자열에서 한 부분 추출하기

    tcl로 Reports/Report#2.rpt를 나눠서 Report#2.rpt만 남기려고 해요 ; 다음 방법을 시도했지만 실행해도 아무 출력이 없었어요 :

    답글 2최근 활동 tcl