【问题标题】:Notepad ++ How to remove all characters standing before a specific characterNotepad ++如何删除特定字符之前的所有字符
【发布时间】:2021-10-15 02:01:02
【问题描述】:

我四处寻找,但找不到任何解决方案。

我有:

<option value="1">Advertising
<option value="11">Aerospace
<option value="12">Agriculture
<option value="13">Architecture/Urban Planning
<option value="14">Arts
<option value="15">Automotive
<option value="16">Banking
<option value="17">Biotech & Pharmaceuticals
<option value="18">Business Services
<option value="19">Chemicals

我想删除"&gt; 之前的所有文本,这样&lt;option value="1"&gt; 等不必要的文本就会消失,只保留Advertising 等作业类型名称。我该怎么做?

【问题讨论】:

  • 如果对相关示例进行测试。将 .*&gt; 替换为空即可。

标签: regex notepad++


【解决方案1】:

使用正则表达式搜索。

  • 键入 ctrl-H 打开搜索和替换对话框。
  • 确保选中“正则表达式”。
  • 将其放入“查找内容”框中:^[^&gt;]*&gt;
  • 确保“替换为”框为空
  • 点击“全部替换”

完成!

说明:正则表达式可以分解如下:

  • ^ — 匹配行首
  • [^&gt;] — 匹配任何不是 > 字符的字符
  • * — 尽可能多地重复前面的操作
  • &gt; — 匹配 > 字符

【讨论】:

  • 在替换之前稍微找一下 All 也许?确定
  • @CasimiretHippolyte - 我在发布之前对其进行了测试。此外,总是有 ctrl-Z :)
  • 我们可以匹配一个单词而不是一个字符吗?
【解决方案2】:

或者,您可以简单地将光标放在&gt;C 包之间,然后使用Alt + Shift + Up Arrow 选择多行。然后按backspace 键。

Cursor goes here--v--------
<option value="19">Chemicals  

这假设所有行都排成一行。对操作这些类型的文件很有用。通常也适用于其他程序(Visual Studio、SSMS 等)。

【讨论】:

    【解决方案3】:

    使用像这样的正则表达式:&lt;[^&lt;]+?&gt; 并替换为空字符串

    【讨论】:

    • 应该是[^&gt;] 而不是[^&lt;]
    【解决方案4】:

    正则表达式 .*">

    替换为空

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2017-04-16
    • 2015-09-05
    • 2015-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多