替换行尾特定内容
在使用 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;