11

我需要改变所有:

<label for="*">

进入

<label for="*" class="inline checkbox">

但事实证明,我的一切<label for="XXXXXX">都变成了<label for="*" class="inline checkbox">. 是的,*从字面上看,它是一个字符串,而不是通配符。

为什么通配符只在 Find 而不是 Replace 中有效?我应该在替换字符串中输入什么?

4

2 回答 2

27

其他地方也提供了接受的答案,但对我不起作用。

我必须在 Find 中使用 (.*) 并在 Replace 中使用 $1。

于 2014-04-09T20:47:11.093 回答
14

我不确定是否有办法使用通配符来做到这一点,但你可以使用正则表达式来完成它:

  1. Find and Replace下面的对话框中Find Options,选中 Use:并从下拉列表中选择Regular expressions
  2. 在 的文本框中Find What,键入:\<label for="{.*}"\>
  3. 在 的文本框中Replace with,键入:<label for="\1" class="inline checkbox">

笔记:

  • 我逃脱了,<因为它们是特殊字符。>\
  • .*将匹配任何字符串。
  • 在替换文本中,\1将替换为{}在查找表达式中找到的字符串。

此外,如果您单击查找和替换文本框旁边的箭头,您将找到有关特殊字符的更多信息。

于 2012-09-19T15:39:16.217 回答