![설명](https://rvso.com/image/1417415/%EC%84%A4%EB%AA%85.png)
검색해서 실험해 보려고 했는데, 도저히 알 수 없었습니다.
메모장++에는 다음과 같은 줄이 있습니다.
102.
또는
12
전체 줄(그래서 \n\r이 필요할 것 같아요)과 모든 종류의 줄을 삭제하고 싶습니다. 어떻게 해야 합니까? (소수점 1개인지, 소수점 2개인지, 소수점 3개인지 또는 그 뒤에 점이 있는지 없는지는 모르겠습니다).
답변1
귀하의 요구 사항이 무엇인지(즉, 삭제할 줄의 가능한 내용이 무엇인지) 100% 명확하지는 않지만 줄이 1에서 3 사이의 숫자로 시작한다는 가정을 바탕으로 정규식을 만들었습니다. , 선택적으로 마침표가 나오고 줄에 다른 내용(시작 또는 끝)이 없습니다.
무엇을 찾다 :^\d{1,3}\.?\r?\n?
다음으로 바꾸십시오: (공백)
다음 데이터 세트에서 테스트되었습니다.
102.
102
12
12
1.
1
9999
ab21.
8442.
뒤에 남는 것은
9999
ab21.
8442.
설명
^
줄의 시작 부분에만 일치하는 특수 문자입니다. 이는 패턴이 단순히 긴 선의 끝에 있지 않은지 확인하기 위한 것입니다.
\d
숫자 값(즉, 0-9)을 일치시키는 데 사용됩니다.
{1,3}
는 이전 문(이 경우 \d
)을 수정하는 데 사용되며 해당 문이 일치하도록 할 최소 및 최대 횟수를 지정하는 데 사용됩니다. 따라서 이 줄은 1회에서 3회(포함) 사이의 숫자와 일치시키려는 것을 의미합니다.
\.
점 문자를 일치시키는 데 사용됩니다. .
모든 문자와 일치하는 데 사용되는 정규 표현식의 특수 문자입니다(기본적으로 개행 문자는 제외, Notepad++에는 이 동작을 변경하는 옵션이 있음). 따라서 "일치하는 패턴" .
이 아닌 "문자" 로 인식되도록 하려면 백슬래시로 이스케이프 처리해야 합니다..
?
는 와 유사하게 마지막 문을 수정하는 데 사용되지만 {1,3}
이번에는 이전 문( [.]
)이 선택 사항임을 의미하는 데 사용됩니다(기술적으로는 0~1번 사이에 일치시키라고 말하지만 최종 결과는 동일함).
\r?\n?
이미 언급한 대로 새 줄을 일치시키는 데 사용됩니다. 정규식은 이것이 없어도 작동하지만 줄을 제거하지 않고 지우기만 합니다(빈 줄을 남겨둡니다). \r
둘 다 선택적으로 만들면 \n
Windows, Linux 및 Mac에서 이식 가능해집니다.
마지막으로, 이 필드를 공백으로 남겨두는 이유 Replace with :
는 삭제하려는 줄에 어떤 것도 다시 들어가지 않기를 바라기 때문입니다.
이것이 당신이 찾고 있던 것이기를 바라며, 그렇지 않다면 올바른 방향을 알려줄 것입니다.