텍스트 추출 프로그래밍 관련 한수 부탁드리께요~

   조회 3834   추천 0    


12345_xxx_274__22_mm
42ssss2_xxx_22__153_mm


여기에서 274와  22 를 뽑고

아래에서는 

22와  153을 뽑아서   각각 변수에 넣고 싶거든요


100백 정도 이런 규칙적으로 뽑아야 하는데

이거이거 어찌 해야 하나요~~

 자바스크립트나  php 나 관계없거든요 

짧은글 일수록 신중하게.
나라뜨 2020-09
정규표현식이라고 검색해보세용
     
최민재 2020-09
+1 replace 에 정규표현식 대입해서 리스트 뽑아 내시면 됩니다
          
조재현 2020-09
예 ~ 감사해요~
     
조재현 2020-09
감사감사~~
찬이 2020-09
정규표현식 조금 배워보시고
https://regexr.com
여기서 두닥두닥 해보시면 금방 하실 수 있습니다.
     
조재현 2020-09
예 감사합니다 ~~~~
FOXBI 2020-09
for문을 이용한 윈도우 batch 파일로 해서 추출할 수도 있고

awk 를 이용한 shell 기반의 추출도 가능합니다.

정규표현식이 사실 말은 쉽지만 경험이 쌓이지 않으면 힘이 듭니다.(저도 맨날 검색해서 하고 합니다~)

인터넷에 돌아다니는 스크립트들은 딱 그 기능만 소개하는 경우가 많고 퍼나른것도 많아서

내가 원하는대로의 결과물을 얻으려면 이것저것 조합해보며 나만의 스크립트를 만들어 해보는수 밖에 없습니다.

단순히 제시하신 예제로는 추출이라기보다는 구분해서 가져올 수 있게 하는게 가장 좋은 방법같아보입니다.

구분은 일정한 규칙으로 나오는 공백이나 기호, 문자등으로 하면 되고요

예제에서는 _ 이게 구분지점으로 사용하면 좋을것 같네요..

일단 shell 환경에서 추출한다면 저러한 예제 100줄이상 같은형식으로 test.txt 파일에 있다고 했을때

VAR1=`cat test.txt | sed "s/__/_/g" | awk -F_ '{print $3}'`
VAR2=`cat test.txt | sed "s/__/_/g" | awk -F_ '{print $4}'`

이렇게 뽑아 변수에 넣는 소스를 for나  while 문을 이용해 Line 단위로 읽어 처리하게 해주면

원하는 결과물을 가공하실 수 가 있으실겁니다.

윈도우 batch는

FOR /F "tokens=1,2,3,4,5 delims=_" %A IN ('type test.txt') DO SET VAR1=%C

이런식으로 뽑아 라인단위로 하는 방법을 만드시면 될것 같습니다.(윈도우는 컨트롤이 좀 복잡하긴 합니다.. ㅎㅎ)



검색 많이 해보시고 위에분들 말씀처럼 메뉴얼로 정규표현식 공부해보시기 바랍니다.

아 자바 스크립트라 php 같은거면 좀더 다양한 소스샘플이 있어 하시기 더 편할겁니다.. 제가 너무 구식만 말씀드렸네요 ^^
     
LSSAH 2020-09
질문자는 아니지만 저도 잘 배워갑니다. 감사합니다~!
     
조재현 2020-09
오 좋은 방법이네요 ~
감사합니다 ~~~
트니아빠 2020-09
엑셀에서도 가능할 것 같은데요.. search, mid를 기반으로 추출하고 numbervalue로 숫자로 변환하여 처리할 수도 있을 것 같습니다.
페선생 2020-09
엑셀에서는 텍스트 나누기로 작업하면 됩니다.^^
왕고양이 2020-09
질문을 이해한 건지 모르겠지만, 자바스크립으로 아래처럼 하면 될것 같습니다. 
var a="12345_xxx_274__22_mm";
var aArr = a.split("_");
var a1 =aArr[2];//274
var a2 =aArr[4];//22
console.log(a1);
console.log(a2);
var b="42ssss2_xxx_22__153_mm";
var bArr = b.split("_");
var b1 =bArr[2];//22
var b2 =bArr[4];//153
console.log(b1);
console.log(b2);


QnA
제목Page 949/5725
2014-05   5245687   정은준1
2015-12   1770995   백메가
2020-09   3547   mvwiz
2020-09   13195   아마데우쓰
2020-09   2750   이건희
2020-09   3702   Ocean
2020-09   2958   언젠가는
2020-09   5339   YunSeong
2020-09   4825   ocarina
2020-09   6725   Elsaphaba
2020-09   4220   Lucifer
2020-09   3625   네이쳐
2020-09   3714   김효수
2020-09   6819   공백기
2020-09   6479   Uknow
2020-09   2812   galaxyfamily
2020-09   3386   시골노인
2020-09   3737   백룡
2020-09   3668   박종대
2020-09   2689   GPGPU
2020-09   17545   구차니
2020-09   4013   iroo