【问题标题】:Regex Matches any new line within a comment正则表达式匹配评论中的任何新行
【发布时间】:2017-03-24 11:49:43
【问题描述】:

有没有办法在 Notepad++ 中的评论 "" 中搜索任何 \n 并替换它,以便在 cmets 中没有空格?

例如:

This is just an example

"Hello, 

I am separated. 

But I would like 

to be [together]"

Finish

我可以将第一个" 更改为<,将第二个" 更改为>,但在<>"" 内不应有任何空格:

我希望得到以下结果:

This is just an example

"Hello, I am separated. But I would like to be [together]"

Finish

谢谢,

【问题讨论】:

  • 从notepadd++你可以做到,但不能只用一个替换命令,除非所有\n都被删除,否则你将不得不反复按替换命令,会这样做吗?

标签: regex comments notepad++


【解决方案1】:

这是完成这项工作的一种方法:

  • 查找内容:[^"]*(?:\G|")\K([^"\r\n]+)\R+
  • 替换为:$1

地点:

  • (?:\G|") : 上一次成功匹配结束或双引号
  • \K : 重置操作符,丢弃前一个匹配项
  • [^"\r\n]+:1 个或多个不是"\r\n 的字符
  • \R+ : 1 个或多个换行符

【讨论】:

  • 感谢 Toto,但如果光标在评论中,这将起作用。例如:光标用x表示。如果光标在x("...") 的注释之外,它将找不到任何东西。但如果光标在评论"x" 内,它会找到它。有没有办法以x"" 开始在评论之外寻找并找到下一个""
  • @Chüngel:只需在正则表达式的开头添加[^"]*。查看我的编辑。
  • 还是不行。请看示例:link 我可以将第一个" 更改为<,将第二个" 更改为>,但我想删除包含 cmets 的行中的空格。跨度>
猜你喜欢
  • 1970-01-01
  • 2012-12-23
  • 2017-01-10
  • 2021-12-31
  • 2011-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多