替换行尾特定内容

在使用 jQuery 进行字符串替换时,如果你想要替换行尾的特定内容,你可以使用 .replace() 方法结合正则表达式来实现。这里有一个简单的例子,展示了如何替换一个字符串行尾的特定文本。

假设你有一个文本字符串,你想要替换每一行末尾的 "old" 为 "new":

var text = "这是第一行old\n这是第二行old\n这是第三行old";
var newText = text.replace(/old\s*$/gm, "new");
console.log(newText);

这里的正则表达式 /old\s*$/gm 解释如下:

  • old:匹配文本 "old"。
  • \s*:匹配任意数量的空白字符(包括空格、制表符等)。
  • $:匹配行的末尾。
  • g:全局匹配,意味着会替换所有匹配项,而不仅仅是第一个。
  • m:多行匹配,意味着 ^$ 会匹配每一行的开始和结束,而不仅仅是整个字符串的开始和结束。

这样,每一行末尾的 "old" 都会被替换为 "new",包括行尾的任何空白字符也会被替换掉。如果你只想替换行末尾的 "old" 而不包括其后的空白字符,可以去掉 \s*

var newText = text.replace(/old$/gm, "new");

这将只替换行末尾紧接 "old" 的部分,不会影响 "old" 后的任何空白字符。

替换行头特定内容,数字串保留

var newStr = val.replace(/^\d+. /gm, function(match) {
                      return '\r\n' + match;
                        });
val = newStr;
return val;