使用javascript和正则表达式删除图像SRC的左侧部分
但这并不适用于所有情况。因为它是静态的。仅删除../public部分。道路没有标准。 例如:使用javascript和正则表达式删除图像SRC的左侧部分,javascript,Javascript,但这并不适用于所有情况。因为它是静态的。仅删除../public部分。道路没有标准。 例如: 它可以是.././公共的,而不是../公共的等等。。。(它可能倾向于左侧)如果要从public关键字(包括它)中删除左侧的所有内容,请使用: str.replace(/.+public/,“”) var str1=“/public/images/pages/contact-685px_06.jpg”; var str2=“/awdawd/awd/public/images/pages/contact-
它可以是.././公共的,而不是../公共的等等。。。(它可能倾向于左侧)如果要从
public
关键字(包括它)中删除左侧的所有内容,请使用:
str.replace(/.+public/,“”)
var str1=“/public/images/pages/contact-685px_06.jpg”;
var str2=“/awdawd/awd/public/images/pages/contact-685px_06.jpg”;
var str3=“偶数/mor3/@#4#%stuff/awdawd/awd/public/images/pages/contact-685px#u 06.jpg”;
console.log(str1.replace(/.+public/,“”));
console.log(str2.replace(/.+public/,'');
控制台日志(str3.replace(/.+public/,'')
如果要从public
关键字(包括它)中删除左侧的所有内容,请使用:
str.replace(/.+public/,“”)
var str1=“/public/images/pages/contact-685px_06.jpg”;
var str2=“/awdawd/awd/public/images/pages/contact-685px_06.jpg”;
var str3=“偶数/mor3/@#4#%stuff/awdawd/awd/public/images/pages/contact-685px#u 06.jpg”;
console.log(str1.replace(/.+public/,“”));
console.log(str2.replace(/.+public/,'');
控制台日志(str3.replace(/.+public/,'')代码>使用以下方法:
var-imgEl=$('img');
imgEl.attr(“src”,imgEl.attr(“src”)。替换(/^.+public/,“”);
console.log(imgEl.attr(“src”)代码>
使用以下方法:
var-imgEl=$('img');
imgEl.attr(“src”,imgEl.attr(“src”)。替换(/^.+public/,“”);
console.log(imgEl.attr(“src”)代码>
使用正则表达式而不是字符串。您想要的正则表达式是“匹配(点对)子路径,直到找到公共子路径”。它可以这样实现:
$(this).attr("src", $(this).attr("src").replace("../public", ""));
在replace
功能中,应用于代码将导致:
regex = /^(?:\.\.\/)+public\//
使用正则表达式而不是字符串。您想要的正则表达式是“匹配(点对)子路径,直到找到公共子路径”。它可以这样实现:
$(this).attr("src", $(this).attr("src").replace("../public", ""));
在replace
功能中,应用于代码将导致:
regex = /^(?:\.\.\/)+public\//
为什么不将*\/
用作regex(捕获并替换图像文件名之前的所有内容:)@Philip您的RegExp
实际上不起作用。他想删除public
关键字之前的所有内容,而不是最后一个斜杠/
@Philip很酷,但这并不是OP想要的:(为什么不使用*/
作为正则表达式(捕获并替换图像文件名之前的所有内容:)@Philip YourRegExp
实际上不起作用。他想删除public
关键字之前的所有内容,而不是最后一个斜杠/
@Philip很酷,但这并不是OP想要的:(