따옴표(" ") 안의 내용과 문자열 뒤의 내용을 제외한 모든 텍스트 추출/삭제

따옴표(" ") 안의 내용과 문자열 뒤의 내용을 제외한 모든 텍스트 추출/삭제

다음과 같은 .txt 파일에 매우 큰 데이터 출력이 있습니다.

value1="1",value2="2",value3="test3",value4="4"
value1="1",value2="2",value3="anothertest3",value4="4"
value1="1",value2="2",value3="lasttest3",value4="4"

value3의 따옴표 안의 값을 추출하여 결과를 다음과 같이 만들고 싶습니다.

test3
anothertest3
lasttest3

그렇게 하려면 어떻게 해야 할까요?

답변1

  1. 검색->바꾸기로 이동하세요.
  2. 세트무엇을 찾다에게 ^value1=".*",value2=".*",value3="(.{10})",value4=".*"$.
  3. 세트다음으로 교체에게 \1.
  4. 세트검색 모드에게 Regular expression.
  5. 누르다모두 다 바꿔.

답변2

검색 모드 사용=Regular Expression

검색: ^.*,value3="([^"]*)".*$
다음으로 바꾸기:\1

답변3

Sam의 솔루션은 나에게 적합하지 않았습니다.

제공한 예제 데이터의 경우 다음 정규식이 작동했습니다. 이스케이프된 경우 에도 값이 a를 포함할 수 없다는 것 외에는 길이에 대한 가정이 없습니다 "(데이터 소스에 따라 언급할 가치가 있음).

value1이것은 또한 앞에 또는 이 있다고 가정하지 않습니다 value2. 선택적으로 생략할 수 있거나 선택적으로 추가 값 또는 순서가 지정되지 않은 값이 있을 수 있습니다.

  1. 검색 -> 바꾸기 (또는 Ctrl+ h)
  2. 검색 모드를 다음으로 설정하세요.정규식
  3. 에 대해 다음을 입력합니다.무엇을 찾다필드

    ^.*value3="([^"]*)".*$
    
  4. 세트다음으로 교체에게$1

  5. 모두 다 바꿔

관련 정보