1

我正在尝试识别像这样的字符串:file=2013/08/something_320x480.jpg 并用 JavaScript 替换它。

这是我的正则表达式:

newStr = str.replace('/file=\d+\/\d+\/.+\d+x\d+.jpg/', 'irrelevant');

我也试过

newStr = str.replace('/file=.+\.jpg/', 'irrelevant');

但是,我的字符串永远不会被替换。我究竟做错了什么?

4

2 回答 2

3

正则表达式文字不带撇号。
尝试:

newStr = str.replace(/file=\d+\/\d+\/.+\d+x\d+.jpg/, 'irrelevant');
于 2013-08-19T10:30:39.180 回答
0

你确定文件是按照你说的那样设置的吗?我刚刚在控制台中尝试了您的示例,它可以工作...

> var a = "file=2013/08/something_320x480.jpg"
undefined
> a.replace(/^file=\d+\/\d+\/.+\d+x\d+.jpg$/, 'irrelevant');
"irrelevant"

更新: 我没有发现你的正则表达式中有 apos',很明显@Taemyr

于 2013-08-19T10:31:49.923 回答