ホームページ  >  記事  >  開発ツール  >  NotePad++ で正規表現を置換する方法 (画像とテキスト)

NotePad++ で正規表現を置換する方法 (画像とテキスト)

不言
不言オリジナル
2018-09-26 16:38:4214661ブラウズ

 本篇文章给大家带来的内容是关于NotePad++正则表达式如何进行替换(图文),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

NotePad++ 正则表达式替换 高级用法

const getQAPartnerSites = (params) => wxRequest(params, apiUrlApp + 'ask/show_sites/')
const getQARecommender = (params) => wxRequest(params, apiUrlApp + 'ask/question_likely/')
const postQAurls = (params) => wxRequest(params, apiUrlApp + 'ad/ad_pub/')
const getQAPublished = (params) => wxRequest(params, apiUrlApp + 'ask/ask_list/')
^const\W{1}(\w+)\W{1}\={1}.+$
\1,
getQAPartnerSites,
getQARecommender,
postQAurls,
getQAPublished,

在我们处理文件时,很多时候会用到查找与替换。当我们想将文件中某一部分替换替换文件中另一部分时,怎么办呢? 下面正则表达式 给我提供方法。

正则表达式,提供复杂 并且弹性的查找与替换

注意: 不支持多行表达式 (involving \n, \r, etc).

1 基本表达式

符号 解释
. 匹配任意字符,除了新一行(\n)。也就是说 “.”可以匹配 \r ,当文件中同时含有\r and \n时,会引起混乱。要匹配所有的字符,使用\s\S。
(…) 这个匹配一个标签区域. 这个标签可以被访问,通过语法 \1访问第一个标签, \2 访问第二个, 同理 \3 \4 … \9。 这些标签可以用在当前正则表达式中,或则替search和replace中的换字符串。
\1, \2, etc 在替换中代表1到9的标签区域(\1 to \9)。例如, 查找字符串 Fred([1-9])XXX 并替换为字符串 Sam\1YYY的方法,当在文件中找到Fred2XXX的字符串时,会替换为Sam2YYY。注意: 只有9个区域能使用,所以我们在使用时很安全,像\10\2 表示区域1和文本”0”以及区域2。
[…] 表示一个字符集合, 例如 [abc]表示任意字符 a, b or c.我们也可以使用范围例如[a-z] 表示所以的小写字母。
[^…] 表示字符补集. 例如, [^A-Za-z] 表示任意字符除了字母表。
^ 匹配一行的开始(除非在集合中, 如下).
$ 匹配行尾.
* 匹配0或多次, 例如 Sa*m 匹配 Sm, Sam, Saam, Saaam 等等.
+ 匹配1次或多次,例如 Sa+m 匹配 Sam, Saam, Saaam 等等.
? 匹配0或者1次, 例如 Sa?m 匹配 Sm, Sam.
{n} 匹配确定的 n 次.例如, ‘Sa{2}m’ 匹配 Saam.
{m,n} 匹配至少m次,至多n次(如果n缺失,则任意次数).例如, ‘Sa{2,3}m’ 匹配 Saam or Saaam. ‘Sa{2,}m’ 与 ‘Saa+m’相同
*?, +?, ??, {n,m}? 非贪心匹配,匹配第一个有效的匹配,通常 ‘eaf5515312973cd1e2c4aca2b4bd67a4’ 会匹配整个 ‘content’字符串 –但 ‘958f55c6e201f79be615af607c97dbf9’ 只匹配 ” .这个标记一个标签区域,这些区域可以用语法\1 \2 等访问多个对应1-9区域。

2 标记和分组

符号 解释
(…) 一组捕获. 可以通过\1 访问第一个组, \2 访问第二个.
(?:…) 非捕获组.
(?=…) 非捕获组 – 向前断言. 例如’(.*)(?=ton)’ 表达式,当 遇到’Appleton’字符串时,会匹配为’Apple’.
(?845894208d0e38aa19f43ec27f8c2d53 これは、Scintilla の単語の定義を使用して単語の末尾と一致します。
\x は、他の意味を持つ文字を表現するために x を使用して実行されます。たとえば、 [ は、文字セットの先頭としてではなく [ としてテキストに挿入するために使用されます。

#4 文字クラス

##[[:alpha:]]アルファベット文字と一致: [A- Za- z][[:digit:]] 数字と一致します: [0-9] [[ :xdigit:]] 16 進文字と一致します: [0-9A-Fa-f][[:alnum:]]英数字の一致: [0-9A-Za-z][[: lower:]]小文字の一致: [a-z][[:upper:]] 大文字と一致します: [A-Z][[:blank:]]空白文字 (スペースまたはタブ) に一致:[ \t][[:space:]]空白文字に一致:[ \t\ r \n\v\f][[:punct:]]句読点文字の一致: [-!”#$%&'()* 、 . /:;96b4fef55684b9312718d5de63fb7121?@[]_`{[[:graph:]]グラフィック文字に一致: [\x21-\ x7E ][[:print:]]印刷可能な文字 (グラフィック文字とスペース) と一致します[ [ :cntrl:]]制御文字の一致
記号 説明
5 置換操作

() で正規表現タグを使用します。 目的の文字を囲み、文字列を \1 (最初に一致するテキスト) に置き換えます。例:

##テキスト本文。 ##結果こんにちは、私の名前はフレッドです。私の名前は (. )私の名前は違います\1こんにちは、私の名前はフレッドではありません6 制限事項PN2 での正規表現のサポートは現在制限されており、サポートされているパターンと構文は、perl でサポートされている強力な表現の非常に小さなサブセットです。最大の制限は、正規表現が単一行にのみ一致し、使用できないことです。複数の行を一致させるには。代わりにバックスラッシュ式を使用できます。計画では、PCRE ライブラリ (PN2 の他の場所で使用) を使用してドキュメント検索をサポートする予定です。
##足の速い茶色のキツネは太った怠け者の犬を飛び越えました 茶色の (. ) は (. ) を飛び越えました。 ) 茶色の \2 は \1 を飛び越えました 素早い茶色の脂肪はキツネの怠惰な犬を飛び越えました

以上がNotePad++ で正規表現を置換する方法 (画像とテキスト)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。