Notepad ++正则表达式在一条线上查找空格字符的第N个实例
问题描述:
我只想匹配一行中的第n个(假设为第5个)空白字符,然后用换行符替换该空格(以便我的所有行基本上都有不超过4个字/ 4个空格)。在Notepad ++中的REPLACE行上,我认为\ r \ n通常会这样做,而这只是FIND模式给我的问题。Notepad ++正则表达式在一条线上查找空格字符的第N个实例
我知道有这个相对简单的正则表达式的解决方案,我消隐,但在我的搜索“查找上线图案的第N个实例”类型的正则表达式的答案,最近已经到我想要的正则表达式也匹配一行之前的第5个空格之前的所有内容。这里是太多的代码。
^(?:\S+\s){5}
我知道了“\ S +”或许不应该出现的,但我试图DOWN对这个代码一些基本的变化在这个下面
^(\s){5}
都失败了这样或那样的。
所以这里是正则表达式的文本结果应该是什么。
FROM:
This line is too long. I want to shorten it.
This line is too long. I would really like to know why my regex is not working.
TO:
This line is too long.
I want to shorten it.
This line is too long.
I would really like to
know why my regex is
not working.
答
如果您没有问题不保留现有换行符,那么一个简单的解决方案,这将是两者分别替换这样的:
首先,搜索\s+
和所有用一个空格替换。
然后做这种替换:
查找内容:
(\S+ \S+ \S+ \S+ \S+)\s
做了 “全部替换” 有:
$1\r\n