正则表达式匹配 vim 上两个符号之间的所有句子?
Regular Expression match all sentence between two symbols on vim?
嗨,这是我的文本文件行:
\```cpp
addPart: partTemplate named: partName
partCatalog at: partName put: partTemplate
```
我需要获取 ```cpp 和 ``` 之间的所有句子。
我尝试编写以下正则表达式 :%s/```cpp\n\(.*\n\)*```//gc
但它匹配文件中的所有行。请任何人帮助我解决问题。谢谢提前....
试试这个
```cpp\n(([^\n]*\n)*)```
第一个(1 不是 0)组将匹配
addPart: partTemplate named: partName
partCatalog at: partName put: partTemplate
问题是外面的*
(那个重复的\(.*\n\)
)是贪心的(尽量匹配)
使用 {-}
代替尽可能少的匹配:
:%s/```cpp\n\(.*\n\)\{-}```//gc
嗨,这是我的文本文件行:
\```cpp
addPart: partTemplate named: partName
partCatalog at: partName put: partTemplate
```
我需要获取 ```cpp 和 ``` 之间的所有句子。
我尝试编写以下正则表达式 :%s/```cpp\n\(.*\n\)*```//gc
但它匹配文件中的所有行。请任何人帮助我解决问题。谢谢提前....
试试这个
```cpp\n(([^\n]*\n)*)```
第一个(1 不是 0)组将匹配
addPart: partTemplate named: partName
partCatalog at: partName put: partTemplate
问题是外面的*
(那个重复的\(.*\n\)
)是贪心的(尽量匹配)
使用 {-}
代替尽可能少的匹配:
:%s/```cpp\n\(.*\n\)\{-}```//gc