공백 없이 문자 앞의 숫자 삭제

공백 없이 문자 앞의 숫자 삭제

각 행에서 콜론을 포함한 숫자를 제거하고 싶습니다.

예시 데이터:

22:18:01(165):access-list OUTSIDE_IN extended permit deny IP

공식을 사용해 봤습니다

=RIGHT(A2,LEN(A2)-FIND(" ",A2))

하지만 작동하지 않았습니다. 22:18:01(165):access-list마지막 콜론 뒤에 공백이 없기 때문에 모두 삭제되었습니다 .

답변1

모든 행이 예제 행과 같다고 가정하면(특히 유지하려는 텍스트 부분에 콜론이 없음) :구분 기호로 지정하여 Text to Columns를 사용할 수 있습니다.

데이터가 있는 열을 선택하고 탭을 클릭 Text to Columns합니다 Data.

첫 번째 화면에서 선택하고 Delimited, 두 번째 화면에서는 Other콜론만 체크하고 입력하세요.:

종료를 누르면 이제 데이터가 각 콜론을 기준으로 4개의 열로 분할됩니다. 처음 3개 열을 삭제하면 다음과 같이 됩니다.access-list OUTSIDE_IN extended permit deny IP


또는 이전의 문자 수가 access-list모든 행에서 동일하다고 가정하면 다음을 사용할 수 있습니다.=RIGHT(A2,LEN(A2)-14)

답변2

모든 길이의 숫자를 충족하는 가장 간단한 수식 솔루션은 데이터 시작 부분에 콜론으로 구분된 고정 개수의 숫자가 있는 경우(예: 세 개의 숫자)에 적용됩니다.

워크시트 스크린샷

다음 수식을 입력하고 B2표의 나머지 열에 Ctrl-Enter/복사-붙여넣기/채우기/자동 채우기를 입력하세요.

=RIGHT(A2,LEN(A2)-FIND(CHAR(1),SUBSTITUTE(A2,":",CHAR(1),3)))

설명:

선택적 네 번째 인수를 사용하면 문자 SUBSTITUTE()의 특정 발생 :(이 경우 세 번째 문자)을 텍스트의 다른 곳에서는 발생하지 않는 특수 문자로 대체할 수 있습니다. CHAR(1)거의 보장되기 때문에 사용됩니다.절대모든 문자열에서 발생합니다.

그 결과 유지하려는 데이터가 오른쪽에 있는 두 번째 단독 구분 기호가 생성됩니다. 이제 수식 RIGHT()이 올바르게 작동합니다.

이 솔루션은 유지하려는 텍스트에 콜론이 있는 경우에도 작동합니다.


보다 일반적인 공식 솔루션은 다음을 허용합니다.변하기 쉬운:데이터 시작 부분의 구분 기호 수(및 모든 길이의 수)는 다음과 같습니다 .

=RIGHT(A2,LEN(A2)-FIND(CHAR(1),SUBSTITUTE(A2,":",CHAR(1),LEN(A2)-LEN(SUBSTITUTE(A2,":","")))))

설명:

두 번째는 SUBSTITUTE()모든 콜론을 삭제합니다. 원본 텍스트 길이와 콜론이 삭제된 텍스트 길이의 차이가 콜론 개수입니다.

샘플 데이터의 경우:

  • LEN(A2)-LEN(SUBSTITUTE(A2,":",""))
    3.
  • 따라서 =RIGHT(A2,LEN(A2)-FIND(CHAR(1),SUBSTITUTE(A2,":",CHAR(1),LEN(A2)-LEN(SUBSTITUTE(A2,":","")))))
    =RIGHT(A2,LEN(A2)-FIND(CHAR(1),SUBSTITUTE(A2,":",CHAR(1),3)))즉 첫 번째 공식과 동일합니다(첫 번째 공식의 경우 가 3세 번째 콜론인 반면, 이 공식에서는 가 콜론이라는 점만 제외).마지막콜론)

분명히 이 공식은~ 아니다유지하려는 텍스트에 콜론이 있으면 올바르게 작동합니다.

관련 정보