숫자 범위에 대한 Grep

더만 바스 투르크

아미노산 및 잔기 데이터를 제공하는 여러 줄의 .txt 파일이 있습니다. 데이터는 다음과 같습니다.

ARG262-Side ASP368-Side 140,83%
ARG95-Side GLU107-Side 103,73%
ARG474-Side VAL468-Main 94,93%
PHE169-Main ALA190-Main 94,63%
THR205-Side ASP203-Side 94,07%
ILE299-Main LYS249-Main 94%
LEU354-Main LYS365-Main 93,6%
ARG346-Side GLU263-Side 93,57%
LEU301-Main ALA247-Main 93,43%
ALA190-Main PHE169-Main 93,37%
SER252-Side ASP296-Side 93,1%
TYR424-Side ASN446-Main 93%

숫자는 잔기를 나타내고 문자는 아미노산을 나타냅니다. 따라서 각 줄의 첫 번째 및 두 번째 필드에서 앞의 부분 -은 아미노산 식별자와 잔기 값으로 구성됩니다. 아미노산과 관계없이 첫 번째 또는 두 번째 필드가 기준과 일치하는지 여부에 관계없이 잔류 물 값이 특정 범위에있는 줄만 인쇄하고 싶습니다.

예를 들어 위의 입력 파일에서 300-425 사이의 잔류 물 만 포함하는 데이터를 추출하고 싶습니다 . 이 경우 내 출력은 다음과 같아야합니다.

ARG262-Side ASP368-Side 140,83%
LEU354-Main LYS365-Main 93,6%
ARG346-Side GLU263-Side 93,57%
LEU301-Main ALA247-Main 93,43%
TYR424-Side ASN446-Main 93%

grep이 명령을 사용하려고 시도했지만 성공하지 못했습니다. 다른 명령을 사용할 수 grep있습니까?

Kusalananda

주로 정규식을 다루는 도구는 숫자를 다루는 데 악명이 높습니다. 이 경우 awk대신 다음과 같은 것을 사용하는 것이 좋습니다 grep.

$ awk '{ r1 = substr($1,4,3); r2 = substr($2,4,3) } (r1 >= 300 && r1 <= 425) || (r2 >= 300 && r2 <= 425)' file
ARG262-Side ASP368-Side 140,83%
LEU354-Main LYS365-Main 93,6%
ARG346-Side GLU263-Side 93,57%
LEU301-Main ALA247-Main 93,43%
TYR424-Side ASN446-Main 93%

awk코드는 각 줄의 처음 두 개의 공백으로 구분 된 필드에서 오프셋 4에서 시작하는 트리 문자를 추출하고이를 r1r2. substr()필드의 데이터에서 고정 된 위치에있는 숫자를 추출하는 데 사용 하고 있지만, 관심있는 숫자가 유일한 숫자라고 확신하는 경우 숫자가 아닌 모든 숫자를 삭제할 수도 있습니다. 그걸로

r1 = $1; gsub("[^[:digit:]]", "", r1)

유사에 대한 r2사용 $2.

끝의 조건이 참이면 현재 줄이 인쇄됩니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

괄호 안의 숫자 범위에 대한 Grep

분류에서Dev

특정 범위 사이의 숫자에 대한 Grep-WAV 품질 확인

분류에서Dev

IP 범위에 대한 grep?

분류에서Dev

grep 문자열 뒤에 숫자 범위

분류에서Dev

숫자 범위에 대해 단어 경계와 함께 grep 사용

분류에서Dev

특정 숫자 형식을위한 Grep

분류에서Dev

문자열 "--->"에 대한 grep

분류에서Dev

Google 숫자 범위 필터의 하위 범위에 대한 최대 값 설정

분류에서Dev

한 자리 및 두 자리 숫자를위한 Grep

분류에서Dev

범위의 숫자를 grep 검색

분류에서Dev

범위 문자열에서 숫자가 속한 범위 찾기

분류에서Dev

숫자 범위 필드에 대한 Elasticsearch 집계

분류에서Dev

숫자 범위에 대한 Java 정규식

분류에서Dev

숫자 범위에 대한 F # 패턴 일치

분류에서Dev

Matlab의 특정 숫자 범위에 대한 For 루프

분류에서Dev

T-숫자 범위에 대한 SQL 문

분류에서Dev

숫자 범위 (standard_in)에 대한 IF 문 1 : 구문 오류

분류에서Dev

각각에 대한 숫자 및 출력 라인 범위 확장

분류에서Dev

텍스트 파일 내의 특정 숫자에 대한 Grep 및 숫자 텍스트 파일 당 출력

분류에서Dev

우분투 터미널 : 숫자 비교를위한 grep

분류에서Dev

문자까지 단어에 대한 grep

분류에서Dev

파이썬 : 정규식 일치 문자열에 대한 숫자 범위

분류에서Dev

문자 범위에 대한 혼란

분류에서Dev

문자열에 대한 범위 쿼리

분류에서Dev

숫자에 대한 NSLocalizedString

분류에서Dev

일부 조건이있는 숫자 범위에 대한 정규식

분류에서Dev

밑줄로 시작하는 숫자 범위에 대한 정규식

분류에서Dev

범위에서 숫자가 <0, 무한대인지 테스트합니다.)

분류에서Dev

숫자 또는 알파벳이 아닌 db 값에 대한 값 범위 쿼리

Related 관련 기사

  1. 1

    괄호 안의 숫자 범위에 대한 Grep

  2. 2

    특정 범위 사이의 숫자에 대한 Grep-WAV 품질 확인

  3. 3

    IP 범위에 대한 grep?

  4. 4

    grep 문자열 뒤에 숫자 범위

  5. 5

    숫자 범위에 대해 단어 경계와 함께 grep 사용

  6. 6

    특정 숫자 형식을위한 Grep

  7. 7

    문자열 "--->"에 대한 grep

  8. 8

    Google 숫자 범위 필터의 하위 범위에 대한 최대 값 설정

  9. 9

    한 자리 및 두 자리 숫자를위한 Grep

  10. 10

    범위의 숫자를 grep 검색

  11. 11

    범위 문자열에서 숫자가 속한 범위 찾기

  12. 12

    숫자 범위 필드에 대한 Elasticsearch 집계

  13. 13

    숫자 범위에 대한 Java 정규식

  14. 14

    숫자 범위에 대한 F # 패턴 일치

  15. 15

    Matlab의 특정 숫자 범위에 대한 For 루프

  16. 16

    T-숫자 범위에 대한 SQL 문

  17. 17

    숫자 범위 (standard_in)에 대한 IF 문 1 : 구문 오류

  18. 18

    각각에 대한 숫자 및 출력 라인 범위 확장

  19. 19

    텍스트 파일 내의 특정 숫자에 대한 Grep 및 숫자 텍스트 파일 당 출력

  20. 20

    우분투 터미널 : 숫자 비교를위한 grep

  21. 21

    문자까지 단어에 대한 grep

  22. 22

    파이썬 : 정규식 일치 문자열에 대한 숫자 범위

  23. 23

    문자 범위에 대한 혼란

  24. 24

    문자열에 대한 범위 쿼리

  25. 25

    숫자에 대한 NSLocalizedString

  26. 26

    일부 조건이있는 숫자 범위에 대한 정규식

  27. 27

    밑줄로 시작하는 숫자 범위에 대한 정규식

  28. 28

    범위에서 숫자가 <0, 무한대인지 테스트합니다.)

  29. 29

    숫자 또는 알파벳이 아닌 db 값에 대한 값 범위 쿼리

뜨겁다태그

보관