일치하는 정규 표현식의 일부를 sed 또는 다른 도구로 바꿉니다.

니콜라 모리

특정 정규 표현식과 일치하는 파일 부분의 문자를 교체해야합니다. 정확히 말하면, -잘못된 마크 다운 링크 있는 공백을 제거해야 합니다. 예 :

[This is my link](actual bad link.md)

다음과 같아야합니다.

[This is my link](actual-bad-link.md)

sed의 정규 표현식으로 시작 (하고 끝나는 것을 일치시킬 수 .md)있지만 일치하는 표현식의 공백 만 sed에 바꾸도록 지시하는 방법을 모르겠습니다. 이 작업을 수행하는 방법이 있습니까 (예 : awk와 같은 다른 명령 줄 도구로도 가능)?

감사.

편집 : 최소로, 나는 사이의 모든 공백을 대체 어떤 명령을 드리겠습니다 (.md)함께 -.

스틸 드라이버

라인 당 하나의 인스턴스없이 중첩 된 괄호를 들어, 당신은 이런 식으로 뭔가를 함께 할 수 matchsubstr:

$ echo '[This is my link](actual bad link.md) other stuff' | awk '
    match($0,/\([^)]*\.md\)/){
      s = substr($0,RSTART,RLENGTH); gsub(/ /,"-", s); 
      print substr($0,1,RSTART-1) s substr($0,RSTART+RLENGTH)}
  '
[This is my link](actual-bad-link.md) other stuff

GNU awk는 매치 그룹을 배열로 캡처하는 비표준 확장 기능을 가지고 있지만 IMO는 여기서 많이 구매하지 않습니다.

match전역 대체를 달성하기 위해 루프를 실행할 수 있지만 Perl이 더 나은 옵션 일 수 있습니다.

$ echo '[This is my link](actual bad link.md) other stuff' | perl -pe '
    s{(\(.*?\.md\))}{$1 =~ s/ /-/gr}ge
  '
[This is my link](actual-bad-link.md) other stuff

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

일치하는 정규 표현식의 일부를 sed 또는 다른 도구로 바꿉니다.

분류에서Dev

정규식을 찾아 $로 시작하는 CSV 파일의 표현식을 바꿉니다.

분류에서Dev

문자열의 일부를 건너 뛰고 일치를 정규 표현식으로 바꿉니다.

분류에서Dev

단어 a char 또는 줄 끝 사이의 일치를 sed로 바꿉니다.

분류에서Dev

단어 a char 또는 줄 끝 사이의 일치를 sed로 바꿉니다.

분류에서Dev

정규식은 여러 일치하는 패턴을 링크로 바꿉니다.

분류에서Dev

정규식 : '@@'를 '@'로, '@'를 일부 문자열로 바꿉니다.

분류에서Dev

Python 정규식은 중간의 일부 숫자를 별표로 바꿉니다.

분류에서Dev

일치하는 첫 번째 줄만 sed로 바꿉니다.

분류에서Dev

한 번에 2 개의 패턴과 일치하는 정규식 또는 둘 다 일치하는 Applescript의 SED

분류에서Dev

정규식 일치는 각도를 사용하는 표현식으로 시작하고 끝납니다.

분류에서Dev

일부 일치를 유지하고 다른 항목을 제거하는 정규 표현식

분류에서Dev

Oracle, 일치하는 표현식을 기반으로 REGEXP_REPLACE의 문자열을 바꿉니다.

분류에서Dev

파이썬의 정규 표현식을 통해 특정 문자열 뒤에 오는 숫자를 바꿉니다.

분류에서Dev

정규 표현식의 다른 표현식까지 일치

분류에서Dev

sed에서 AWORD 또는 BWORD를 CWORD로 바꿉니다.

분류에서Dev

파이프로 구분 된 파일의 특정 행 (sed 또는 awk)에서 특정 열의 값을 바꿉니다.

분류에서Dev

sed를 사용하여 줄의 일부를 변수로 바꿉니다.

분류에서Dev

Sed는 따옴표로 된 단어를 바꿉니다.

분류에서Dev

Python Regex : 하나의 정규 표현식 또는 다른 표현식 선택

분류에서Dev

SED / AWK : 다른 소스 파일의 정규식 값과 일치하는 여러 파일에 문자열 추가

분류에서Dev

SED / AWK : 다른 소스 파일의 정규식 값과 일치하는 여러 파일에 문자열 추가

분류에서Dev

REGEX와 일치하는 값을 다른 열로 바꿉니다.

분류에서Dev

정규식이 일치하는 모든 일치 항목을 x 번 바꿉니다.

분류에서Dev

정규식은 패턴과 일치하지만 다른 값으로 바꿉니다.

분류에서Dev

[^ ']뿐만 아니라 문자열의 \'와도 일치하는 정규 표현식

분류에서Dev

정규식을 사용하여 PHP의 값으로 문자열의 일부를 검색하고 바꿉니다.

분류에서Dev

sed는 일치하는 패턴의 일부를 만듭니다.

분류에서Dev

정규식 : 일치하는 모든 다른 정규식 왼쪽

Related 관련 기사

  1. 1

    일치하는 정규 표현식의 일부를 sed 또는 다른 도구로 바꿉니다.

  2. 2

    정규식을 찾아 $로 시작하는 CSV 파일의 표현식을 바꿉니다.

  3. 3

    문자열의 일부를 건너 뛰고 일치를 정규 표현식으로 바꿉니다.

  4. 4

    단어 a char 또는 줄 끝 사이의 일치를 sed로 바꿉니다.

  5. 5

    단어 a char 또는 줄 끝 사이의 일치를 sed로 바꿉니다.

  6. 6

    정규식은 여러 일치하는 패턴을 링크로 바꿉니다.

  7. 7

    정규식 : '@@'를 '@'로, '@'를 일부 문자열로 바꿉니다.

  8. 8

    Python 정규식은 중간의 일부 숫자를 별표로 바꿉니다.

  9. 9

    일치하는 첫 번째 줄만 sed로 바꿉니다.

  10. 10

    한 번에 2 개의 패턴과 일치하는 정규식 또는 둘 다 일치하는 Applescript의 SED

  11. 11

    정규식 일치는 각도를 사용하는 표현식으로 시작하고 끝납니다.

  12. 12

    일부 일치를 유지하고 다른 항목을 제거하는 정규 표현식

  13. 13

    Oracle, 일치하는 표현식을 기반으로 REGEXP_REPLACE의 문자열을 바꿉니다.

  14. 14

    파이썬의 정규 표현식을 통해 특정 문자열 뒤에 오는 숫자를 바꿉니다.

  15. 15

    정규 표현식의 다른 표현식까지 일치

  16. 16

    sed에서 AWORD 또는 BWORD를 CWORD로 바꿉니다.

  17. 17

    파이프로 구분 된 파일의 특정 행 (sed 또는 awk)에서 특정 열의 값을 바꿉니다.

  18. 18

    sed를 사용하여 줄의 일부를 변수로 바꿉니다.

  19. 19

    Sed는 따옴표로 된 단어를 바꿉니다.

  20. 20

    Python Regex : 하나의 정규 표현식 또는 다른 표현식 선택

  21. 21

    SED / AWK : 다른 소스 파일의 정규식 값과 일치하는 여러 파일에 문자열 추가

  22. 22

    SED / AWK : 다른 소스 파일의 정규식 값과 일치하는 여러 파일에 문자열 추가

  23. 23

    REGEX와 일치하는 값을 다른 열로 바꿉니다.

  24. 24

    정규식이 일치하는 모든 일치 항목을 x 번 바꿉니다.

  25. 25

    정규식은 패턴과 일치하지만 다른 값으로 바꿉니다.

  26. 26

    [^ ']뿐만 아니라 문자열의 \'와도 일치하는 정규 표현식

  27. 27

    정규식을 사용하여 PHP의 값으로 문자열의 일부를 검색하고 바꿉니다.

  28. 28

    sed는 일치하는 패턴의 일부를 만듭니다.

  29. 29

    정규식 : 일치하는 모든 다른 정규식 왼쪽

뜨겁다태그

보관