用空格替换任意数量的加号

时间:2017-08-29 01:50:59

标签: html regex replace notepad++

我有超过2000 <img>个标签,我想为每个标签替换替代文字。替代文字如下:

  1. alt =“pinblock”
  2. ALT = “富+奥斯汀+店铺+ 4”
  3. ALT = “热干+ + +太阳AZ”
  4. 我想快速用空格('')替换所有'+',因此我正在使用正则表达式来解决这个问题。 到目前为止我试过这个:

    查找内容: alt="(\D+)[+](\D+)[+*](\D*)[+*](\D*)[+*](\D*)[+*](\D*)[+*](\D*)[+*](\D*)"\s

    替换为: alt="\1 \2 \3 \4 \5 \6 \7 \8"

    我知道我做错了什么,请帮忙。

    完整的字符串将是:

    <img border="0" height="111" src="https://1.bp.blogspot.com/-WL5_jMT96p4/U8ILVU9D-mI/AAAAAAAAGeI/rP_RJccbhj8/s1600/hot+dry+sun+az.jpg" alt="hot+dry+sun+az" width="200" />

1 个答案:

答案 0 :(得分:0)

为了演示,我已经测试了这一点并重复按下Replace All按钮。首先,按下Regular expression单选按钮,然后按:

Find what:    (alt=\"[^+"]*?)\+([^\"]*?")
Replace with: \1 \2

这当然不是万无一失的,但只要你没有病理数据就应该有效。

注意:我的第一个版本有一个错误,它会将alt="hot+dry+sun+az" width="200+200"更改为alt="hot+dry+sun+az" width="200 200",这是为什么不应该使用正则表达式来处理HTML的一个很好的例子。我认为这个任务可以在几行JavaScript中完成,没有像我上面那样被绊倒的危险,但那是另一天的另一个问题!

注意2 :我的第二个版本也获得了Zalgoed