正则表达式替换不遵守 $1
Regex Replace doesn't obey $1
var input = document.getElementById('textinput').value;
var lines = input.split(''n');
var output = '';
$.each(lines, function(key, line) {
for(var iii=0; iii<=key; iii++) //for each line
{
var filenameRegex = /^'* '['[Media:(.+?)('|)/;
var results = lines[iii].match(filenameRegex);
var filename;
console.log('lines[iii]= '+lines[iii]);
if(results!==null && results.length!== 0)
{
output += lines[iii].replace(filenameRegex,'$1');
}
}
我努力尝试,但输出总是output += lines[iii].replace(filenameRegex,'$1$2')
即使我只想要 1 美元
示例输入:* [[媒体:重要内容|不重要内容]]
预期输出:重要内容
实际输出:重要内容不重要内容]]
如果我理解正确,您正在寻找以下内容:
演示
法典:
var filenameRegex = /^'* '['[Media:(.+?)'|.*/;
var results = lines[iii].match(filenameRegex);
var filename;
console.log('lines[' + iii + ']= ' + lines[iii]);
console.log('key[' + iii + ']= ' + key);
if (results !== null && results.length !== 0) {
output += lines[iii].replace(filenameRegex, '$1');
}
相关文章:
- 用javascript添加类,而不是替换
- 将数组存储到本地存储中,而不是替换
- JavaScript 不会替换字符串的最后一个符号
- JavaScript .replace HTML 标记不会替换
- InnerHTML 追加项而不是替换项
- javascript.replacement()不会替换所有出现的内容
- 包括外部javascript;不遵守闭包用法
- JS添加到功能而不是替换为原型
- 如何将变量表达式转换为可执行代码(而不是替换值)
- AngularJS-为什么不;t替换:true使用templateUrl属性
- 我怎样才能附加此文本而不是替换它
- string.replace(fromCharCode() , '') 不能替换字符
- 将值添加到本地存储,而不是替换它
- IE10 单击缩略图会在新窗口中打开大图像,而不是替换特色图像
- 双大括号在页面中呈现,并且不会替换为绑定值
- 使用 JavaScript 添加(而不是替换)CSS 类
- 正则表达式替换而不是替换(谷歌应用脚本)
- replace() 不会替换所选文本
- 为什么 window.location 追加而不是替换 IE 中的 URL
- 正则表达式替换不遵守 $1