需要帮助在记事本++中使用正则表达式覆盖字符串值



我正在尝试将 xml 标签中的字符串值长度从 8 个或更多字符替换为记事本++中的固定 7 个字符。到目前为止,我尝试的是!!

在"查找内容"中:

<Tag>([a-zA-Z0-9 ]{8,})</Tag>    

替换为 :

<Tag>1{7}</Tag>

这是我要替换的字符串:

<Tag>E2EDL20003         </Tag>   
<Tag>E2EDL22            </Tag>    
<Tag>E2EDL22 </Tag>  
<Tag>E2EDL2</Tag>

预期成果:

<Tag>E2EDL20</Tag>    
<Tag>E2EDL22</Tag>   
<Tag>E2EDL22</Tag>  
<Tag>E2EDL2</Tag>

实际结果:

<Tag>E2EDL20003         {7}</Tag>  
<Tag>E2EDL22            {7}</Tag>  
<Tag>E2EDL22 {7}</Tag>  
<Tag>E2EDL2</Tag>

谢谢大家的回复。尝试了一些更改并得到了我的要求。

在查找方式中:([a-zA-Z0-9]{7}(([a-zA-Z0-9 ]+(

替换:\1

搜索:

<Tag>([a-zA-Z0-9 ]{7}).*

(确保.与换行符不匹配(,并替换为:

<Tag>1</Tag>

请注意,既然你想要

<Tag>E2EDL22 </Tag> 

变成

<Tag>E2EDL22</Tag> 

由于E2EDL22只有 7 个字符,而不是 8 个字符,因此您应该使用 {7 来匹配左侧的字符,而不是 {8 个字符,以便修剪最后一个空格。

最新更新