晚上好!有点难以理解,我不知道是否可以完成?!
我有一个包含数千行的文件。我想搜索一下:
TheValue="12345678"
然后根据有多少个字符格式化“”标记内的数字。例如:
如果“”中有1个字符,请将其更改为:
TheValue="1"
要:
TheValue="1x"
如果“”中有2个字符,请将其更改为:
TheValue="12"
要:
TheValue="12x"
如果“”中有3个字符,请将其更改为:
TheValue="123"
要:
TheValue="1y23x"
如果“”中有4个字符,请将其更改为:
TheValue="1234"
要:
TheValue="12y34x"
如果“”中有5个字符,请将其更改为:
TheValue="12345"
要:
TheValue="1z23y45x"
但是,超过5的任何内容只会将附加数字移到 z
的左侧如果“”内有6/7/8个字符,请从以下位置更改:
TheValue="123456"
TheValue="1234567"
TheValue="12345678"
要:
TheValue="12z34y56x"
TheValue="123z45y67x"
TheValue="1234z56y78x"
答案 0 :(得分:1)
好的,我想出了一个解决方案!这是非常手动的,但我很酷〜
查找
TheValue="([a-zA-Z0-9]{1})"
TheValue="([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{1})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{1})([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{3})([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{4})([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{5})([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
TheValue="([a-zA-Z0-9]{6})([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})"
替换为:
TheValue="$1x"
TheValue="$1x"
TheValue="$1y$2x"
TheValue="$1y$2x"
TheValue="$1z$2y$3x"
TheValue="$1z$2y$3x"
TheValue="$1z$2y$3x"
TheValue="$1z$2y$3x"
TheValue="$1z$2y$3x"
TheValue="$1z$2y$3x"
显然你一个接一个地做。一旦我全部使用5位数(x,y和z),我就可以增加第一个([a-zA-Z0-9] {6})值。