正则表达式用恰好两个空格替换一行末尾的零个或多个空格
regex replace zero or more spaces at the end of a line with exactly two spaces
如何用匹配的非白色space后跟恰好两个spaces,保留换行符?
正在搜索:
(\S)(\h*)$
将匹配。替换为:
(?# two spaces after the one)
会离开newline intact所以没关系。我希望它会丢弃第二个匹配项(\h*
匹配除换行符之外的所有白色 space),但事实并非如此。它离开第二个匹配项,并在其前面添加两个 space。
编辑: 这是一个例子。为了清楚起见,[cr]是换行符(CR + LF in windows),[sp]表示1 space,[2sp] 2 space等
eggs[cr]
bacon;[2sp][cr]
[cr]
sausage.[3sp][cr]
应该变成
eggs[2sp][cr]
bacon;[2sp][cr]
[cr]
sausage.[2sp][cr]
用例是在 Notepad++ 中编写 markdown。我通常会忘记两个 space 标记 <\br> 我想用正则表达式 search/replace 修复它。我知道降价可以使用两个或更多 spaces,但是,只有两个会更干净。没有任何额外的 search/replace 三重或更多 spaces,最好。
我会这样做:
查找内容:(?<=\S)\h*$
替换为:
(两个空格)
如何用匹配的非白色space后跟恰好两个spaces,保留换行符?
正在搜索:
(\S)(\h*)$
将匹配。替换为:
(?# two spaces after the one)
会离开newline intact所以没关系。我希望它会丢弃第二个匹配项(\h*
匹配除换行符之外的所有白色 space),但事实并非如此。它离开第二个匹配项,并在其前面添加两个 space。
编辑: 这是一个例子。为了清楚起见,[cr]是换行符(CR + LF in windows),[sp]表示1 space,[2sp] 2 space等
eggs[cr]
bacon;[2sp][cr]
[cr]
sausage.[3sp][cr]
应该变成
eggs[2sp][cr]
bacon;[2sp][cr]
[cr]
sausage.[2sp][cr]
用例是在 Notepad++ 中编写 markdown。我通常会忘记两个 space 标记 <\br> 我想用正则表达式 search/replace 修复它。我知道降价可以使用两个或更多 spaces,但是,只有两个会更干净。没有任何额外的 search/replace 三重或更多 spaces,最好。
我会这样做:
查找内容:(?<=\S)\h*$
替换为:(两个空格)