[英]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
。
此正则表达式匹配任何è
, é
, ê
或ë
,如果没有则用e
代替;
在同一行之后。
对于o
变体:
[\xF2-\xF6](?!.*;)
对于c
(只有一个,因此您也可以直接输入ç
):
\xE7(?!.*;)
对于a
:
[\xE0-\xE5](?!.*;)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.