我有幾行看起來像
\node[ ... Some code here ... { ... some more code
\node[ ... Some code here ... { ... some more code
\node[ ... Some code here ... { ... some more code
在每一行中,我想用我自己的程式碼替換從[
到 的程式碼。{
\node
始終位於每行的開頭。{
是不是在線的末尾。
我已經找到(在這裡)並嘗試了類似^\\node.*\{
or的東西,但是兩者都產生了相同的令人不滿意的結果:整個程式碼直到文件中的\\node.*\{
最後一個都被標記。{
答案1
實際上,啟用 Wrap around 就完全沒問題了。事實上,我建議你這樣做。
由於片段保證位於行的開頭,因此您可以使用脫字號 ( ^
) 錨點。
以下對我有用:
尋找:^\\node\[[^{]*\{
;用。\\node[test{
錨點^
到行首。轉義特殊字元後\\node\[
匹配文字。抓取除左大括號之外的所有字元。 (請注意,此處不需要轉義,因為它位於字元類別中。)然後取得左大括號本身。\node[
[^{]*
{
\{
如果 ... Some code here ...
可以包含大括號:
尋找:^\\node\[.*\{([^{]*)$
;用。\\node[test{$1
第一部分是相同的。然後,.*
將匹配盡可能多的字元。\{
匹配左大括號,然後([^{]*)$
匹配並捕獲所有字符,直到行尾。既然[^{]
指定了,那麼它將不匹配任何左大括號,因此前一個\{
必須匹配{
行中的最後一個。
答案2
在「搜尋/取代」對話方塊中,使用「尋找內容」:節點[。並替換為:節點[測試{成功替換...這裡有一些代碼...和測試在每一行上。
您必須指定以下選項:
- 不要勾選“環繞”
- 勾選“正規表示式”
- 不要勾選“.匹配換行符”