【问题标题】:Find/Replace regex to remove html tags查找/替换正则表达式以删除 html 标签
【发布时间】:2011-04-27 17:13:29
【问题描述】:

使用查找和替换,什么正则表达式会删除围绕这样的标签:

<option value="863">Viticulture and Enology</option>

注意:选项值变化为不同的数字,但可以使用正则表达式去除数字

我仍在努力学习,但我无法让它发挥作用。

我没有使用它来解析 HTML,我有来自我们公司网站之一的数据,我们需要这些数据在 excel 中,但我们的设计师删除了原始数据文件,我们需要它回来。我有一个选项列表,需要删除 HTML 标记,使用 Notepad++ 查找和替换

【问题讨论】:

    标签: regex notepad++


    【解决方案1】:

    这对我有用 Notepad++ 5.8.6 (UNICODE)

    搜索:<option value="\d+">(.*?)</option>

    替换:$1

    一定要选择“正则表达式”和“.matches newline”

    【讨论】:

      【解决方案2】:

      我已经使用以下正则表达式完成了:

      找到这个: <.*?>|</.*?>

      替换为: \r\n(此为新行)

      通过使用这个正则表达式 (<.*?>|</.*?>),我们可以轻松地在您的 HTML 标记之间找到值,如下所示:

      我有输入:

      <otpion value="123">1</option><otpion value="1234">2</option><otpion value="1235">3</option><otpion value="1236">4</option><otpion value="1237">5</option> 
      

      我需要在 1、2、3、4、5 等选项之间找到值

      并得到以下输出:

      【讨论】:

        【解决方案3】:

        这对我来说非常适合:

        • 在“查找”模式中选择“正则表达式”。
        • 在“查找内容”字段中输入 [ 并将“替换为”字段留空。
        • 请注意,您需要 5.9 版的 Notepad++ 才能使用?接线员上班。

        在这里找到: digoCOdigo - strip html tags in notepad++

        【讨论】:

          【解决方案4】:

          这样的事情会起作用(只要你知道 HTML 的格式不会改变):

          <option value="(\d+)">(.+)</option>
          

          【讨论】:

          • 嗯,这删除了整行,但看起来很接近。
          • 我将进行两次查找和替换:一次用于。效果很好,谢谢。
          • 如果您使用 Notepad++ 查找/替换,它不会起作用,因为正则表达式使用反向引用来捕获您想要保留的字段。对于查找/替换,只需将数字之前的所有内容都替换为空,然后将 "&gt; 替换为分隔符(如 | 但不是逗号,因为名称中可能有逗号),然后最终将 替换为空。将结果导入 Excel。
          【解决方案5】:
          String s = "<option value=\"863\">Viticulture and Enology</option>";
          s.replaceAll ("(<option value=\"[0-9]+\">)([^<]+)</option>", "$2")
          res1: java.lang.String = Viticulture and Enology
          

          (用 scala 测试,因此是 res1:)

          使用 sed,您将使用稍微不同的语法:

          echo '<option value="863">Viticulture and Enology</option>'|sed -re 's|(<option value="[0-9]+">)([^<]+)</option>|\2|'
          

          对于记事本++,我不知道详细信息,但“[0-9]+”应该表示“至少一位数”,“[^

          但是,很多 html 都是以对正则表达式友好的方式生成的,总是适合一行,并且从未被注释掉。或者你在一次性代码中使用它,并且可以在之前检查你的输入。

          【讨论】:

          • 这真的很有帮助,现在要循环遍历它们:D TY!
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-04-16
          • 2013-11-29
          • 1970-01-01
          • 2010-10-01
          相关资源
          最近更新 更多