1

我有简单的脚本,我想获取我的图像,然后用逗号分隔它们。但是,[gallery]自从我得到Uncaught SyntaxError: Invalid regular expression: missing /.

有人可以看看并告诉我我的 RegEx 代码中的问题在哪里吗?

HTML

<textarea>
abc
[gallery]/content/img/upload/img-2012.03.19.-634677727044317051.jpg, /content/img/upload/img-2012.03.19.-634677727046997204.jpg, /content/img/upload/img-2012.03.19.-634677727049487347.jpg, /content/img/upload/img-2012.03.19.-634677727051787478.jpg, /content/img/upload/img-2012.03.19.-634677727054137613.jpg[/gallery]
def
</textarea>​

JavaScript

$(function(){
    var text = $('textarea').val();
    var re = /\[gallery\]([^}]+)[/gallery\]/g;
    var gallery = re.exec(text);
    alert(gallery);
});​

小提琴:http: //jsfiddle.net/BcFsg/

4

3 回答 3

2

是的,问题是你错过了一个转义字符

var re = /\[gallery\]([^}]+)\[\/gallery\]/g;
//                          |
//                       [ HERE ]

jsfiddle在这里http://jsfiddle.net/BcFsg/ ​​1/

于 2012-05-06T15:09:13.960 回答
2

看到更新的小提琴......我不知道为什么,但似乎你不必逃避关闭]

编辑:给出错误的输出(所有方括号都需要转义)...更新小提琴编辑2:更新小提琴只提醒图像列表

小提琴

于 2012-05-06T15:09:30.840 回答
1

您需要/通过 eriting 来逃避正则表达式中间的\/

于 2012-05-06T15:09:02.320 回答