>  기사  >  개발 도구  >  notepad++ 정규식 문자열 대체 정보

notepad++ 정규식 문자열 대체 정보

藏色散人
藏色散人앞으로
2020-12-02 15:02:205612검색

下面由notepad教程栏目给大家介绍notepad++正则表达式替换字符串的方法,希望对需要的朋友有所帮助!

notepad++ 정규식 문자열 대체 정보

则表达式是一个查询的字符串,它包含一般的字符和一些特殊的字符,特殊字符可以扩展查找字符串的能力,正则表达式在查找和替换字符串的作用不可忽视,它 能很好提高工作效率。 

EditPlus的查找,替换,文件中查找支持以下的正则表达式: 

表达式 说明 
 /t 制表符. 
 /n 新行. 
 . 匹配任意字符. 
 | 匹配表达式左边和右边的字符. 例如, "ab|bc" 匹配 "ab" 或者 "bc". 
 [] 匹配列表之中的任何单个字符. 例如, "[ab]" 匹配 "a" 或者 "b". "[0-9]" 匹配任意数字. 
 [^] 匹配列表之外的任何单个字符. 例如, "[^ab]" 匹配 "a" 和 "b" 以外的字符. "[^0-9]" 匹配任意非数字字符. 
 * 其左边的字符被匹配任意次(0次,或者多次). 例如 "be*" 匹配 "b", "be" 或者 "bee". 
 + 其左边的字符被匹配至少一次(1次,或者多次). 例如 "be+" 匹配 "be" 或者 "bee" 但是不匹配 "b". 
 ? 其左边的字符被匹配0次或者1次. 例如 "be?" 匹配 "b" 或者 "be" 但是不匹配 "bee". 
 ^ 其右边的表达式被匹配在一行的开始. 例如 "^A" 仅仅匹配以 "A" 开头的行. 
 $ 其左边的表达式被匹配在一行的结尾. 例如 "e$" 仅仅匹配以 "e" 结尾的行. 
 () 影响表达式匹配的顺序,并且用作表达式的分组标记. 
 / 转义字符. 如果你要使用 "/" 本身, 则应该使用 "//".

例子: 

原始串 
str[1]abc[991]; 
str[2]abc[992]; 
str[11]abc[993]; 
str[22]abc[994]; 
str[111]abc[995]; 
str[222]abc[996]; 
str[1111]abc[997]; 
str[2222]abc[999];
目标串: 
 abc[1]; 
 abc[2]; 
 abc[11]; 
 abc[22]; 
 abc[111]; 
 abc[222]; 
 abc[1111]; 
 abc[2222];

处理: 
查找串:str/[([0-9]+)/]abc/[[0-9]+/] 
替换串:abc[/1] 

一、包含“hello word”的行

^.*hello word.*$

二、以“hello word”开始的行

^hello word.*$

三、以“hello word”结尾的行

.*hello word$

替换为:

查找目标\n([a-zA-Z0-9])

或者\r([a-zA-Z0-9])

替换目标$1(http前面的换行变成   ','   ,然后再加其他的)

【1】정규 표현식 적용 - 지정된 내용을 줄 끝으로 바꿉니다.
원본 텍스트는 다음 두 줄입니다.
abc aaaaa
123 abc 444
"abc"가 나올 때마다 "abc"와 다음 줄이 대체됩니다. 마지막 내용은 "abc efg"입니다.
즉, 위의 텍스트는 최종적으로 다음과 같이 대체됩니다.
abc efg
123 abc efg
해결 방법:
① 대체 대화 상자에 "abc. *" 검색 내용에서
② 동시에 "Regular" Expression" 체크박스를 체크한 후 "Replace All" 버튼을 클릭하세요
그 중 기호의 의미는 다음과 같습니다.
"." 문자
"*" = 0회 이상 일치
참고: 이는 실제로 정규식 대체입니다. 다음은 제기된 문제 중 일부를 요약한 것입니다. 정규식 자체에서 간단히 말하면 수천 가지 특수 사례가 있을 수 있습니다. 파생되다.
【2】정규 표현식 응용 프로그램 - 숫자 대체

asdadas123asdasdas456asdasdasd789asdasd
를 다음으로 바꾸려고 합니다:
asdadas[123]asdasdas[456]asdasdasd[789]asdasd
대체 대화 상자에서 "정규 표현식" 복합 선택 상자를 선택합니다. ;
검색 내용에 "[0-9][0-9][0-9]"를 따옴표 없이 입력하세요.
"바꾸기:"에 "[/0/1/2]"를 입력하세요.
범위는 귀하가 운영하고 있는 범위이며, 이를 대체하도록 선택할 수 있습니다.
사실 이것도 정규식의 특수한 경우입니다. "[0-9]"는 0과 9 사이의 특수한 경우를 일치시키는 것을 의미합니다. 마찬가지로 "[a-z]"는 a~z 사이의 특수한 경우를 일치시키는 것을 의미합니다.
위의 "[0-9]"는 세 개의 연속 숫자를 나타내는 데 사용됩니다.
"/0"은 첫 번째 "[0-9]"에 해당하는 프로토타입을 나타내고, "/1"은 두 번째 "[0-9" ]"를 나타냅니다. 해당 프로토타입 등
"[", "]"는 "[" 또는 "]"를 추가하는 간단한 문자입니다. "Other/0/1/2Other"를 입력하면 대체 결과는 다음과 같습니다.
asdadas other 123개 기타 asdasdas 기타 456개 기타 asdasdasd 기타 789개 기타 asdasd
기능 강화(by jiuk2k):
검색 내용을 "[0-9][0-9][0-9]"에서 "[0- 9]로 변경하는 경우 *[0-9]", 1 또는 123 또는 12345에 해당하거나...
필요에 따라 맞춤설정할 수 있습니다
관련 내용이 많이 있으므로 정규식의 구문을 참고하여 주의 깊게 공부할 수 있습니다
[3] 정규식의 적용 - —각 줄의 끝에서 지정된 문자를 삭제합니다.
이러한 문자는 줄에도 나타나므로 간단한 교체로는 확실히 달성할 수 없습니다.
예를 들어,
12345 1265345
2345
각 줄 끝의 "345"를 삭제하려면
이것도 정규식의 사용법을 계산하려면 정규식을 주의 깊게 살펴보면 실제로 비교적 간단해야 합니다. 그러나 이 질문이 제기되기 때문에 다음과 같은 문제가 있습니다. 정규식을 이해하는 과정은 다음과 같습니다.
해결 방법:
교체 대화 상자에서 "정규식" 확인란을 활성화합니다.
검색 내용에 "345$"를 입력합니다.
여기서 "$"는 줄 끝부터 일치한다는 의미입니다.
줄의 시작 부분부터 일치시키면 "^"를 사용하여 구현할 수 있지만 EditPlus에는 줄의 시작 부분에서 문자열을 삭제하는 것이 매우 간단합니다.
a.
b. 편집 - 서식 - 줄 설명 삭제
팝업 대화 상자에서 지울 줄의 시작 부분에 문자를 입력하고 확인
[4] 정규식 수식 적용 - 여러 줄을 반으로 바꾸기 꺾쇠 괄호
수백 개의 웹 페이지에 다음과 같은 코드가 있습니다:
/n
교체 대화 상자에서 "정규 표현식" 옵션을 활성화하면 교체를 완료할 수 있습니다.
[5 ]정규 표현식 적용 - 빈 줄 삭제
시작 EditPlus를 클릭하고 처리할 텍스트 유형 파일을 엽니다.
① "찾기" 메뉴에서 "바꾸기" 명령을 선택하면 텍스트 바꾸기 대화상자가 나타납니다. 검색 및 바꾸기에 정규식을 사용함을 나타내려면 "정규식" 확인란을 선택합니다. 그런 다음 "교체 범위"에서 "현재 파일"을 선택하여 현재 파일에 대한 작업을 나타냅니다.
② '콘텐츠 찾기' 콤보박스 오른쪽에 있는 버튼을 클릭하면 드롭다운 메뉴가 나타납니다.
③ 다음 작업은 찾을 빈 줄을 나타내는 정규식을 추가합니다. (팁: 빈 줄에는 공백 문자, 탭 문자 및 캐리지 리턴 문자만 포함되며 이 세 가지 기호 중 하나로 시작하고 캐리지 리턴 문자로 끝나야 합니다. 빈 줄을 찾는 핵심은 다음과 같은 표현을 구성하는 것입니다. 빈 줄).
"검색"에 정규식 "^[ /t]*/n"을 직접 입력하세요. /t 앞에 공백 문자가 있다는 점에 유의하세요.
(1) "줄의 시작 부분부터 일치"를 선택하면 "내용 찾기" 콤보 상자에 "^" 문자가 나타납니다. 이는 찾을 문자열이 텍스트의 줄 시작 부분에 나타나야 함을 나타냅니다.
(2) "범위 내 문자"를 선택하면 "^" 뒤에 괄호 쌍 "[]"이 추가되고 현재 삽입 지점은 괄호 안에 있습니다. 대괄호는 정규식으로 표시됩니다. 텍스트의 문자가 대괄호 안의 문자와 일치하면 검색 조건을 충족합니다.
(3) 스페이스 바를 눌러 공백 문자를 추가하세요. 공백 문자는 빈 줄의 구성 요소입니다.
(4) "Tab"을 선택하고 탭 문자를 나타내는 "/t"를 추가합니다.
(5) 커서를 이동하고 현재 삽입 지점을 "]" 뒤로 이동한 다음 "0회 이상 일치"를 선택하면 별표 문자 "*"가 추가됩니다. 별표는 한 줄에서 앞에 있는 괄호 "[]" 안에 공백이나 탭이 0개 이상 있다는 의미입니다.
(6) "Line Feed"를 선택하고 "/n"을 삽입하여 캐리지 리턴 문자를 나타냅니다.
④ "바꾸기" 콤보 상자를 비워 두세요. 이는 발견된 콘텐츠를 삭제한다는 의미입니다. 빈 줄을 하나씩 삭제하려면 "바꾸기" 버튼을 클릭하고, 모든 빈 줄을 삭제하려면 "모두 바꾸기" 버튼을 클릭하세요. (참고: EditPlus에는 때때로 "모두 바꾸기"가 빈 줄을 한 번에 완전히 삭제할 수 없는 문제가 있습니다. 프로그램 버그일 수 있습니다. 버튼을 여러 번 눌러야 합니다.
1. 중국어로 번역하다 보면 다음과 같은 번역이 필요한 문장이 자주 나오나요?
코드:
"게시물 추가 오류!";
"댓글 추가 오류!";
비슷한 문서가 많아서 하나씩 번역하는 건 당연히 피곤하고 지루한 일이죠.
실제로 이렇게 처리할 수 있는데, 에디트플러스의 바꾸기 기능을 사용하고 바꾸기 대화 상자에서 "정규식" 체크박스를 선택하세요.
원본 파일 찾기:
코드:
"추가 오류([^!| "|;]*)
대체됨:
코드:
“/1을 추가하는 동안 오류가 발생했습니다.
이 대체 후에 무슨 일이 일어났습니까? 결과는 다음과 같습니다:
코드:
“게시물을 추가하는 동안 오류가 발생했습니다!”;
“ 댓글을 추가하는 중 오류가 발생했습니다.";
"사용자를 추가하는 중 오류가 발생했습니다!";
알겠습니다. 다음에는 무엇을 할 건가요? 물론 게시물, 댓글, 사용자를 원하는 단어로 바꾸세요. 최종 결과 얻기:
코드:
"댓글을 추가하는 동안 오류가 발생했습니다!";
"사용자를 추가하는 동안 오류가 발생했습니다!"; 추출할 단어가 중간에 있습니다. 예:

Code: 
 can not be deleted because 
 can not be added because 
 can not be updating because

可以用这种方式: 
在Editplus里面用 替换 功能,在替换对话框选中“正则表达式”复选框: 
查找原文件: 
Code: 
can not be ([^ ]*) because 
替换成: 
Code: 
无法被/1因为 
这样替换之后发生了什么?结果是: 
Code: 
无法被deleted因为 
无法被added因为 
无法被updating因为 
其余步骤如上。 
在汉化量很大而且句式比较单调的情况下对效率的提高很明显! 
解释一下:([^!|"|;]*) 的意思是 不等于 ! 和 ” 和 ; 中的任何一个,意思就是这3个字符之外的所有字符将被选中(替换区域); 
/1 即被选中的替换区域所在的新位置(复制到这个新位置)。 
3.经常手工清理一行一行地删除文本文件里面的空白行,其实可以交给Editplus更好的完成,在Editplus里面用替换功能,在替换对话框选中 “正则表达式”复选框: 
查找原文件: 
Code: 
^[ /t]*/n 
替换部分为空就可以删除空白行了,执行一下看看:) 
abandon[2''b9nd2n]v.抛弃,放弃 
abandonment[2''b9nd2nm2nt]n.放弃 
abbreviation[2bri:vi''ei62n]n.缩写 
abeyance[2''bei2ns]n.缓办,中止 
abide[2''baid]v.遵守 
ability[2''biliti]n.能力 
able[''eibl]adj.有能力的,能干的 
abnormal[9b''n0:m2l]adj.反常的,变态的 
aboard[2''b0:d]adv.船(车)上 

1. 
查找: (^[a-zA-Z0-0/-]+)(/[*.*/]+)(.*) 
替换: @@@@@”/1″,”/2″,”/3″, 
效果: 
@@@@@”abandon”,”[2''b9nd2n]“,”v.抛弃,放弃”, 
@@@@@”abandonment”,”[2''b9nd2nm2nt]“,”n.放弃”, 
@@@@@”abbreviation”,”[2bri:vi''ei62n]“,”n.缩写”, 
@@@@@”abeyance”,”[2''bei2ns]“,”n.缓办,中止”, 
@@@@@”abide”,”[2''baid]“,”v.遵守”, 
@@@@@”ability”,”[2''biliti]“,”n.能力”, 
@@@@@”able”,”[''eibl]“,”adj.有能力的,能干的”, 
@@@@@”abnormal”,”[9b''n0:m2l]“,”adj.反常的,变态的”, 
@@@@@”aboard”,”[2''b0:d]“,”adv.船(车)上”, 

2. 
查找: /n 
替换: 
注: 要次替换内容为空 
效果: 
@@@@@”abandon”,”[2''b9nd2n]“,”v.抛弃,放弃 ”,@@@@@”abandonment”,”[2''b9nd2nm2nt]“,”n.放弃 ”,@@@@@”abbreviation”,”[2bri:vi''ei62n]“,”n.缩写 ”,@@@@@”abeyance”,”[2''bei2ns]“,”n.缓办,中止”,@@@@@”abide”,”[2''baid]“,”v.遵守 ”,@@@@@”ability”,”[2''biliti]“,”n.能力”,@@@@@”able”,”[''eibl]“,”adj.有能力的,能 干的 ”,@@@@@”abnormal”,”[9b''n0:m2l]“,”adj.反常的,变态的 ”,@@@@@”aboard”,”[2''b0:d]“,”adv.船(车)上”,@@@@@”abolish”,”[2''b0li6]“,”v.废 除,取消”,@@@@@”abolition”,”[9b2''li62n]“,”n.废除,取消” 

3. 
查找: @@@@@ 
替换: /n 
效果: 
“abandon”,”[2''b9nd2n]“,”v.抛弃,放弃”, 
“abandonment”,”[2''b9nd2nm2nt]“,”n.放弃”, 
“abbreviation”,”[2bri:vi''ei62n]“,”n.缩写”, 
“abeyance”,”[2''bei2ns]“,”n.缓办,中止”, 
“abide”,”[2''baid]“,”v.遵守”, 
“ability”,”[2''biliti]“,”n.能力”, 
“able”,”[''eibl]“,”adj.有能力的,能干的”, 
“abnormal”,”[9b''n0:m2l]“,”adj.反常的,变态的”, 
“aboard”,”[2''b0:d]“,”adv.船(车)上”, 
“abolish”,”[2''b0li6]“,”v.废除,取消”, 

4. 任务完成

一、删除空行(不包括有空格类符号的空行) 
1、\r\n转义符替换 
按ctrl+h,跳出搜索替换框,把查找模式定义为扩展(\n,\r...) 
查找目标:\r\n\r\n 
替换为:\r\n

有编程基础的读者应该知道是什么意思了。

2、Textfx插件 
先选中要删部分文本内容,如果是整个文件那就全选Ctrl+A,然后使用Notepad++自带的Textfx插件,在长长的列表中找到Delete Blank Lines,点击即可。

Notepad++의 정규식은 이스케이프 문자 등과 호환되지 않으므로 큰 제한이 있으며 정규식으로 직접 대체할 수 없습니다.

2. 공백이 있는 빈 줄 삭제
1. 공백을 먼저 삭제한 다음 빈 줄을 삭제하세요
공백만 있는 줄을 삭제하는 방법은 무엇인가요?
메뉴 편집에서 공백 작업(줄 편집)을 찾아 클릭하여 줄 끝의 공백을 제거한 후 위의 방법을 사용하여 공백 줄을 삭제합니다.

2. 정규식을 사용하여 빈 줄과 공백을 삭제합니다.
교체에서 검색 모드로 정규식 ^ +$를 선택하고 아무 것도 입력하지 않은 후(즉, 아무것도 채우지 않음) 위의 방법을 사용하여 삭제합니다. 빈 줄.

위 내용은 notepad++ 정규식 문자열 대체 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제