正则表达式删除无标记

时间:2012-07-13 17:47:56

标签: regex notepad++

我遇到一些正则表达式的问题;我需要找到引号之间的所有内容以及之间的所有内容都要删除。现在标记引号很简单

".*?"

用点匹配新行(匹配换行符)。所以现在我已经标记了我需要的所有内容,我可以简单地删除此搜索未找到的所有内容吗?为什么这么做很难 - 删除未标记的文本;概念本身非常简单。

我在记事本++上使用Regex。

接下来,我需要删除前两个引号,在此之后取消引用 x 引号,并按照下面显示的格式进行格式化。但到目前为止,我正在努力解决基本概念;我需要有人让我回到正轨。

"foo" "bar" "..." "..." "..." "baz"    -->    ..., ..., ..., baz

"foo" "bar" "" "...                    -->    ......, baz
..." "baz"

1 个答案:

答案 0 :(得分:0)

删除第一个引用的所有内容:

Search: \A[^"]+
Replace: (nothing)

匹配引号和任何后续非引号字符中的任何内容,替换为带引号的文字:

Search: ("[^"]*")[^"]+
Replace: $1

我假设\A匹配文本的开头,$1指的是Notepad ++正则表达式中的捕获组。