是否可以在Visual Studio中替换为大写?

ser*_*hio 27 regex replace visual-studio uppercase

是否可以使用"查找和替换"对话框和RegEx(?)àla 替换 Visual Studio中的大写:. => Upper(.)

说我有:

m_<b>a</b>blabla
Run Code Online (Sandbox Code Playgroud)

我想要:

_<b>A</b>blabla
Run Code Online (Sandbox Code Playgroud)

Ric*_*ckL 25

您可以使用Visual Studio临时宏来解决此问题.这是一个非常强大,灵活的功能,我一直用它来执行重复的代码操作.

我假设你在这里使用C#默认密钥绑定.

  1. CTRL+ SHIFT+ F打开查找文件对话框.
  2. 点击使用"正则表达式"
  3. 将"查找内容:"设置为" <m_:Ll" - 以m开头的字,下划线,然后是小写字母;
  4. 单击"全部查找"以搜索所有出现的内容;
  5. CTRL+ SHIFT+ R开始录制临时宏;
  6. F8查找下一个搜索表达式;
  7. 按右光标,右光标,SHIFT+右光标(跳过"m_",然后选择小写字母);
  8. CTRL+ SHIFT+ U将小写字母大写;
  9. CTRL+ SHIFT+ R停止录制临时宏;
  10. CTRL+ SHIFT+ P重播临时宏,它将跳转到下一个表达式并将"m_"后的第一个字母大写.您需要按CTRL+ SHIFT+ P表达式的次数.

  • 值得注意的宏已经从VS2012中删除了......不能再做了:(曾经一直使用这些. (11认同)
  • 我使用Notepad ++,因为它不在VS2012中:http://stackoverflow.com/questions/1039226/regex-to-change-to-sentence-case (6认同)

DBo*_*ton 10

如果您使用 Visual Studio Code(而不是 Visual Studio),则可以使用修饰符:\u\U\l\L

  • 示例文本:m_<b>a</b>blabla
  • 寻找:m_<b>(.*)</b>
  • 代替:m_<b>\U$1</b>
  • 替换后的示例文本:m_<b>A</b>blabla

注意:这仅在 Visual Studio Code 1.29 及更高版本(2020 年 8 月发布)中可行。请参阅https://code.visualstudio.com/updates/v1_49#_case-changing-in-regex-replace


Joã*_*elo 8

不,Visual Studio不支持.有关VS检查中正则表达式功能的参考:

正则表达式(Visual Studio)


(原始答案,因错误解释原始问题而给出)

假设Visual Studio C#默认键绑定.

有不同的方法可以实现这一目标.

如果它是(变量,方法,属性等),您可以使用重命名重构来更改所有实例.F2在要重命名的实例上按键可调用此重构.

如果对定义本身执行更改,还可以使用SHIFT+ ALT+ F10调用活动重构弹出窗口,然后重命名所有实例.

如果它是字符串文字,您可以使用快捷键CTRL+ U(小写)和CTRL+ SHIFT+ U(大写)快速切换选择的大小写.这对编辑器中显示的所有文本都有效,但对字符串文字最有用.

  • FWIW:[VSCode 可以](https://code.visualstudio.com/updates/v1_47#_editor)。复制到它,发挥你的魔力,然后复制回来。 (2认同)