문자열에서 특정 요소를 제거하고 다른 요소로 대체

문자열에서 특정 요소를 제거하고 다른 요소로 대체

이것을 어떻게 변환할 수 있나요?

RS.PK.03.01.4200.03.014.01 to man03140101?

어떻게 해야 하나요?

다섯 번째 "." 앞의 텍스트를 삭제해야 합니다 RS.PK.03.01.4200.
변환해야 할 나머지 텍스트 03.014.01는 으로 변환되어야 합니다 031401. "0"이 제거되고 "014"가
01끝에 추가됩니다. 03140101
앞에 man을 추가합니다. man03140101
하나의 파일에서 이 변환을 수백 번 수행해야 합니다.

답변1

sed 's/^\([^\.]*\.\)\{5\}\(..\)\..\(..\)\.\(..\)/man\2\3\401/'

할 수 있는 작업:

  • 점으로 구분된 비점 5세트(잡았으나 무시됨)
  • 다른 그룹 캡처
  • 문자열 다시 작성

관련 정보