簡體   English   中英

用記事本++和正則表達式替換內部匹配的字符串

[英]Replace inside matched string with Notepad++ and regex

我在文本文件中有幾行:

Joëlle;Dupont;123456
Alex;Léger;134234

我想用:

Joëlle;Dupont;123456;joelle.dupont@mail.com
Alex;Léger;134234;alex.leger@mail.com

我想將所有帶有重音符號(é,ë...)的字符替換為沒有重音符號(e,e ...)的字符,但僅在郵件地址上 ,僅在行的一部分上。

我知道我可以使用\\L\\E將大寫字母更改為小寫字母,但這不是我唯一要做的事情。

我用了 :

(.*?);(.*?);(\d*?)\n

替換為:

$1;$2;$3;\L$1.$2@mail.com\E\n

但這不會用重音符號代替字符:

Joëlle;Dupont;123456;joëlle.dupont@mail.com
Alex;Léger;134234;alex.léger@mail.com

如果您知道如何用Notepad ++做到這一點,即使有多個替代品,也許您也可以幫助我。

我不知道您的總體人口,但是您可以使用以下代碼將e的變體替換為e

[\xE8-\xEB](?!.*;)

並替換為e

[我從此網頁獲得以上范圍,並帶有列名]

regex101演示

此正則表達式匹配任何èéêë ,如果沒有則用e代替; 在同一行之后。


對於o變體:

[\xF2-\xF6](?!.*;)

對於c (只有一個,因此您也可以直接輸入ç ):

\xE7(?!.*;)

對於a

[\xE0-\xE5](?!.*;)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM