JavaScript 正则表达式,返回模式之前和之后的所有内容
JavaScript regular expression, return everything before and after a pattern
我需要返回一个没有某些数据的字符串(文件名),示例字符串是:
- eng_somerset_yeovil_montacute-house_962.jpg
- eng_south-yorkshire_barnsley_wentworth-castle_0.jpg
- eng_staffordshire_harriseahead_mow-cop-castle_1329317.jpg
- eng_somerset_weston超级mare_marine湖walkway_29113.jpg
这些示例字符串需要返回如下:
- eng_somerset_yeovil_montacute房子.jpg
- eng_south yorkshire_barnsley_wentworth城堡.jpg
- eng_staffordshire_harriseahead_mow警察城堡.jpg
- eng_somerset_weston超mare_marine湖步道.jpg
我尝试使用下面的正则表达式,但我只看到模式并在返回模式后:
filename = fl.replace(/(^.*?(?=[_]{1}[0-9]{1,10}))/gi, '');
- _962.jpg
- _0.jpg
- _1329317.jpg
- _29113.jpg
感谢您的帮助。
这个正则表达式应该可以工作:
var repl = str.replace(/_'d+(?='.jpg$)/, "");
测试:
str = 'eng_somerset_yeovil_montacute-house_962.jpg';
var repl = str.replace(/_'d+(?='.jpg$)/, "");
// eng_somerset_yeovil_montacute-house.jpg
相关文章:
- 正则表达式用于在javascript中存储单词之前和之后
- 正则表达式删除最后一个数字之后的字符串
- Javascript 正则表达式在特定单词或数字之后拆分
- 如何在 javascript 中使用正则表达式提取句点 (.) 之后的字符串
- JavaScript 正则表达式,返回模式之前和之后的所有内容
- JavaScript正则表达式在“句子”之前和之后的空格需要删除
- 正则表达式在文本中查找匹配项,而不是在单词之后
- 需要正则表达式在用冒号分隔之前和之后获取字符串
- Javascript正则表达式删除扩展名之后的所有内容
- 如何构造一个javascript正则表达式来提取特殊字符串之后的所有字符串
- 将输入光标设置为javascript正则表达式之后的正确位置
- 正则表达式,用于查找一个术语之后和另一个术语之前的单词
- 选择A之后的所有文本”#"带有正则表达式的符号
- 正则表达式匹配大写字母,而不是在破折号之后
- 正则表达式,它匹配一个单词,而不是在另一个单词之后
- 正则表达式来删除子字符串和x之后的所有字符
- 正则表达式如何选择“.”之后的任何字符
- 正则表达式,用于替换前4位之后的数字
- 用于匹配两个/反斜杠/之间的字符串的正则表达式模式,该模式直接出现在另一个字符串的第一次匹配之后
- 正则表达式,用于在非字母之前和之后的字母