5

我正在尝试在 Notepad++ 中使用正则表达式将空格更改为类似这样的制表符

01 fsdfsd

01 01 fsdfsd

01 01* fsdfsd

01 01 01 fsdfsd

01 01 01* fsdfsd

如何在数字之间保留空格并仅更改最后一个空格?

谢谢。

4

2 回答 2

6

搜索:

[ ]([a-zA-Z])

(注意字符类前面有一个空格。)并替换为:

\t$1

如果您还有其他格式的行,或者fsdfsd可能包含空格,则可能更适合的替代方法是:

^((?:\d+\*?)(?:[ ]\d+\*?)*)[ ]

现在替换为

$1\t

这匹配最长可能的数字字符串之后的任何空格,可选星号由空格分隔。

于 2012-10-27T18:16:06.880 回答
2

您可以使用查找头来仅匹配空格后跟数字以外的内容,但是由于记事本不支持环顾四周,因此您必须采用捕获和释放方法来查找字母:

search: " +([a-zA-Z])" (don't include the quotes - there to show the space) 
replace: \t$1
于 2012-10-27T18:22:05.720 回答