예를 들어 OU111_DI_Z006_1 텍스트를 포함하는 엄청난 양의 줄이 있습니다.
@로 표시되는 일부 문자는 줄마다 다릅니다. 이렇게: OU@@@_@@_Z0@@__@
검색 대체 기능을 사용하여 Z 앞에 문자 X를 추가하려면 어떻게 해야 합니까?
다음과 같습니다: OU111_DI_XZ006_1
답변1
교체 창 표시에서정규식그리고
무엇을 찾다: (OU..._.._)(Z0.._.)
다음으로 교체: \1X\2
http://docs.notepad-plus-plus.org/index.php/Regular_Expressions
답변2
이는 데이터에 따라 다릅니다. "OU" 및 "Z0" 문자는 각 하위 문자열의 시작을 표시하는 데 고유합니까... 아니면 무작위로 나타날 수 있습니까(예: OU222_Z0_Z055..)?
고유하고 각 하위 문자열의 시작 부분을 제외하고 어디에도 표시될 수 없는 경우 간단한 정규식은 매우 일반적으로 작동할 수 있습니다.
Find: (OU.*)(Z0.*)
Replace: \1X\2
여기서는 OU로 시작하는 모든 항목(.*)을 "\1"로 그룹화합니다. 그리고 Z0으로 시작하는 모든 것을 "\2"로 그룹화합니다. (괄호는 그룹을 생성합니다.)
교체 문자열은 그룹 1과 2 사이에 X를 넣는 것입니다.
참고: 이것은 존재해야 하는 밑줄과 문자 수를 지정하지 않기 때문에 더 일반적인 점을 제외하면 marbel82의 답변과 매우 유사합니다.
..
그러나 해당 OU 및 Z0이 고유 마커가 아닌 경우 해당 특성에 대한 일반 정규식을 작성하려면 데이터를 더 잘 이해해야 합니다.