Excel, IP 주소에서 선행 0 제거


8

다음과 같은 형식의 IP 주소 목록이 있습니다.

    010.125.015.013
    010.125.153.012
    010.125.012.135

Windows가 점선으로 된 8 진 형식이라고 생각하기 때문에 해당 양식으로 핑을 실행할 수 없습니다. 각 점 다음에 선행 0을 제거해야합니다.

그들 중 일부는 점 뒤에 선행 0을 갖지 않기 때문에 간단하지 않으며 일부는 마지막 옥텟에만 있고 일부는 세 번째 옥텟 또는 둘 다에 있습니다.

핑을 강제로 해석 할 수있는 솔루션이 없다면 점으로 구분 된 십진 IP 주소로 간주됩니다.

누구든지 도울 수 있습니까?

감사


2
다음과 같이 0을 유지한다고 가정 123.234.000.276합니까? (예, 가짜 예)
CVn

내 예에서는 '0'이 없어야합니다. 예 : '010.155.105.013''10 .155.105.13 '
Michal

정규식의 힘 으로이 작업을 쉽게 수행 할 수 있습니다! 시작 하려면이 링크 를 사용하십시오 . 정규 표현식은 다음과 같이 간단합니다 ^0(문자열의 시작 부분에서 0과 일치)!
Dudemanword

2
선행 0을 제거하면 IP가 변경됩니다. 선행 0은 8 진수를 나타냅니다.
코드 InChaos

1
@CodesInChaos 일반적으로 그렇습니다. 그러나 입력은 각 옥텟을 세 자리 길이로 만들기 위해 단순히 0을 앞에 붙인 것처럼 보입니다. 64에서 99 범위의 옥텟에서는 작동하지 않는 것 외에도 누군가가 해당 작업을 수행하는 동안 표기법을 8 진수로 변경하지 않을 것 같습니다. 앞에 0이없는 숫자는 앞에 0이없는 10 진수가있는 표준 표기법으로 변환됩니다.
kasperd 2016 년

답변:


11

수행 할 수있는 작업은 다음과 같습니다.

  1. 각 IP가 하나의 단일 셀에 텍스트로 있다고 가정합니다. 이제 텍스트로 열 기능을 사용하여이 단일 셀을 열로 변환하고 .(점)을 구분 기호로 지정하십시오 . 이제 다음 4 개의 연속 셀에 숫자로 분배되며 앞에 0이 없어야합니다.

  2. 연결 기능을 사용하십시오 (자세한 내용은 Excel 도움말을 참조하고 .각 문자열 뒤에 포함하여 4 개의 숫자를 조인하십시오 . 이제 모든 선행 0을 제외하고 동일한 IP를 가진 셀이 있어야합니다.


12

이건 어떤가요

=INT(MID(A1,1,3)) & "." & 
 INT(MID(A1,5,3)) & "." & 
 INT(MID(A1,9,3)) & "." & 
 INT(MID(A1,13,3))

6

이것은 다음을 사용합니다 SUBSTITUTE.

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE("@."&TRIM(C5),".0","."),".0","."),"@.","")

여기에 이미지 설명을 입력하십시오

첫째, (의 IP 주변의 빈 공간을 트리밍 C5) 접두사 추가 @., 대체 .0.추가 접두사를 제거 한 후 두 번을하고 @..


아휴! 나는이 대답을 찾을 지금까지 다른 사람 : 1에 비해 "옆 생각"그렇게 때문에 (농담) 당신이 (더 심각) codegolf에서 승리의 사용을 TRIM확인 어떤 최종 공백을 (떠나지 않을 만드는 ... 아직 codegolf을 지금까지 이겼습니다! ;-D)
danicotra

3

시간이 지났습니다 (이탈리아어에서 영어로 수식을 변환해야합니다 ... 또한 LibreOffice 만 처분해야합니다 ...) 어쨌든 IP 주소가 A 열에 있다고 가정하면 다음과 같이 제안합니다.

=CONCATENATE(VALUE(MID(A1,1,3)),".",VALUE(MID(A1,5,3)),".",VALUE(MID(A1,9,3)),".",VALUE(MID(A1,13,3)))

@fheub : 감사합니다. Ms-Excel의 이탈리아어 버전은 거의 모든 다른 수식 이름을 갖습니다 . 그럼에도 불구하고 우리 는 수식의 매개 변수 구분 기호로 사용 ;하지 않으므로 ,수식을 변경해야합니다. 이탈리아에서는 btw 숫자로 소수점 이하 구분 기호로 쉼표 (점이 아님)를 사용합니다. 마지막으로, 직장에서 Excel을 사용하지만 집에서 LibreOffice 만 가지고 있으며 Excel만큼 잘 문서화되어 있지 않다는 것을 인정해야합니다 (항상 수식 이름이 둘 사이에서 동일하게 유지되기를 바랍니다). ...
danicotra

추신 : 잊어 버렸습니다 ... LibreOffice는 시트 / 셀 참조가 .LibreOffice에서 작성된 반면 Excel에서는 !대신 ( 'Sheet 1'.A1<=> 'Sheet 1'!A1) 사용해야 한다는 점에서도 Excel과 다릅니다 .
danicotra
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.