[英]Find and replace in Visual Studio code in a selection
我在 VSCode 中編輯的文件中有以下行:
...............111.........111.............111..
我想全部換掉.
s 與0
s。 但是,當我突出顯示該行並查找/替換.
s,所有的.
文檔中的 s 被替換,而不僅僅是我有 select 行中的那些,即使我切換“在選擇中查找”按鈕也是如此。 這是一個錯誤嗎? 在其他編輯器中,如果我 select 一段文本然后進行查找/替換,它只會查找/替換所選塊內的匹配項。
以下是您應該能夠重現問題的片段。 ...............111.........111.............111..
行位於test_unicode
function 內。
def test_simple2(self):
"""Simple CSV transduction test with empty fields, more complex idx, different pack_size.
100011000001000 ->
..........111....................111..........11111..........111..
"""
field_width_stream = pablo.BitStream(int('1000110001000001000', 2))
idx_marker_stream = pablo.BitStream(int('11101', 2))
pack_size = 4
target_format = TransductionTarget.JSON
csv_column_names = ["col1", "col2", "col3", "col4", "col5"]
pdep_marker_stream = pablo.BitStream(generate_pdep_stream(field_width_stream,
idx_marker_stream,
pack_size, target_format,
csv_column_names))
self.assertEqual(pdep_marker_stream.value, 63050402300395548)
def test_unicode(self):
"""Non-ascii column names.
Using UTF8. Hard coded SON boilerplate byte size should remain the same, column name
boilerplate bytes should expand.
100010010000000 ->
2 + 4 + 9 2 + 4 + 6 2 + 4 + 7
...............111.........111.............111..
"""
field_width_stream = pablo.BitStream(int('100010001000', 2))
idx_marker_stream = pablo.BitStream(1)
pack_size = 64
target_format = TransductionTarget.JSON
csv_column_names = ["한국어", "中文", "English"]
pdep_marker_stream = pablo.BitStream(generate_pdep_stream(field_width_stream,
idx_marker_stream,
pack_size, target_format,
csv_column_names))
self.assertEqual(pdep_marker_stream.value, 1879277596)
我在 Ubuntu 16.04 中使用 VSCode 1.12.2。
我能夠讓它工作,但工作流程很差:
它可以工作,但是您必須為每個新選擇重新完成工作流程(當然, CTR + H除外)。 順便說一句,我在 Sublime Text 中有完全相同的行為。
你能用一個正則表達式來找到你的行嗎? 它們是否僅包含 . 和 1?
來自 VSCode 開發人員:
我們曾經在打開帶有選擇的查找小部件時自動啟用在選擇中查找,但是太容易意外觸發並產生很多抱怨。 您可能想要設置 "editor.find.autoFindInSelection": true 這將使它按您期望的方式工作。
如果有人感興趣, VSCode GitHub issue有更多詳細信息。
編輯: autoFindInSelection
選項從 VSCode 1.13 開始可用。 該版本目前正在開發中(截至 2017 年 6 月 7 日),因此在新版本發布之前,此修復程序將不起作用。
我發現以下工作流程相當輕松:
因為有時我們可能有類似命名的東西,所以你不想選擇所有東西,我最喜歡的快捷方式之一是選擇下一個出現:
VS Code 文檔頁面中的基本編輯在查找和替換方面有一些非常有用的變體。 一個非常有用的快捷方式是Column (Box) Selection 。
在 Mac 上:
剛遇到這個,我的解決方案是
好吧,這真的很愚蠢,當我終於找到這個時,我一開始覺得很愚蠢,然后我意識到它只是 VS Code,界面很糟糕。
關鍵是,這里有兩個工具,搜索/替換(資源管理器頂部左側的窗格)和查找/替換(按下 CTRL-F 時打開的對話框)
這些不是同一個工具!
即你應該使用 FIND-REPLACE!
此外,以正確的順序執行這些步驟非常重要,否則它不會給出預期的結果。
我希望這有幫助。
我對 VSC 開發人員的建議,應該有一個刷新按鈕,以便在您選擇感興趣的區域之后,並且您已經定義了查找和替換字符串,您可以選擇一個新區域並單擊“刷新查找”而不是需要重復步驟 3 到 8。
對於那些仍然無法正常工作的人,在上述所有答案中都省略了一個步驟:如果選中“在選擇中查找”,則取消選中它(這可能是當你正在努力解決它並且絕望地用谷歌搜索問題時,並且然后找到了這個 SO 條目)。 只有然后選擇行,然后重新檢查“在選擇中查找”。
對於 Ubuntu,突出顯示要進行更改的行,按 alt-L,然后按 ctrl-H。 然后在右上角的下拉列表中鍵入要替換的名稱和替換名稱。
或這些操作的某種組合,具體取決於下拉菜單是否已打開或您是否已處於 alt-L 模式。 我仍在學習,但我想我會分享有效的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.