我想找到一个带有数字后跟一个点的文本,并用相同的文本(带点的数字)和“xyz”字符串替换它。 对于前。
1. This is a sample
2. test
3. string
**I want to change it to**
1.xyz This is a sample
2.xyz test
3.xyz string
我学会了如何找到匹配的文本(\ d。),但挑战是找到替换文本。 我正在使用notepad ++编辑器,任何人都可以建议“替换为”字符串。
答案 0 :(得分:5)
首先,你需要逃避点,因为它意味着"匹配任何东西(除了新线,取决于s
修饰符是否已设置)":(\d\.)
。
其次,如果您有2位数或更多数字,则需要添加量词:(\d+\.)
。
第三,在这种情况下,我们不需要第1组:\d+\.
。
在替换中,它非常简单:只需使用$0xyz
即可。 $0
将引用组0,这是整场比赛。
答案 1 :(得分:0)
我认为正确答案如下:
查找:^(\d)([.])(\s)
替换:$1$2XYZ
这将使用“n。”为“n”数字[0-9]。如果输入应接受不同长度的数字,如10,100,1000 ......或多个点“。”在点后面的数字或多个空格之后,答案是:
查找:^(\d*)([.])([.]*)(\s*)
替换:$1$2XYZ
输入:
1. This is a sample
2. test
3. string
30. string
10..... string
50005... string
输出:
1.XYZ This is a sample
2.XYZ test
3.XYZ string
30.XYZ string
10.XYZ string
50005.XYZ string