我一直在遇到需要增加变量的情况,但是我还没有找到一种编写脚本的方法,所以我最终手工编写了它,这在有大量的内容时非常糟糕。我发现this site上的代码我认为可行,但我的文本编辑器(TextWragler)不喜欢它(或者我没有做正确的事情)。这是一个例子:
Initial Contents: Var22 Var20 Var86 Var30
Search String: Var*[0-9]
Replace String: Var%1>49>
Results: Var50 Var51 Var52 Var53
替换字符串只是自己返回。
我将使用它来增加以下内容:
<span id="x">something</span> <span id="x">else</span> <span id="x">entirely</span>
值x应替换为x1,x2,x3或其他一些“字符串”+ n。如果它可以像grep代码所暗示的那样识别和重新编号错误编号的变量,那将是理想的。
知道如何让这个工作吗?我可以不使用textWrangler吗?谢谢
另一方面,我正试图在javascript上做得更好,我真的很好奇我如何能够将这样的东西(grep /增量字符串)实现到javascript中?
答案 0 :(得分:2)
不确定你想要什么,但如果你想对'Var'之后的数字部分应用(算术或其他)操作,你可以使用委托函数做类似的事情
'Var22 Var20 Var86 Var30'
.replace(/(Var)(\d+)/g,
function(a,b,c){return b+(Number(c)+10)}
); //=> Var32 Var30 Var96 Var40
在javascript正则表达式中,%
- 符号为$
,匹配索引从1开始。如果您只想将'Var12`中的数字替换为9,它看起来像这样:
'Var12'.replace(/(Var)(\d+)/,'$19'); //=> Var9
// Var (=$1) ^^^ ^ 1 or more numbers (=$2)
This webpage为您提供有关 javascript 正则表达式
的更多信息