0

我有这个功能:

function tagCheck(tag:String,rez:String):String{
    var regExp:RegExp = /\[user_id\](.*?)\[\/user_id\]/g;
    var matches:Object = regExp.exec(rez);
    return matches[1];
 }

我想用标签更改“user_id”,我该怎么做,因为 regExp 中没有字符串?谢谢你!

4

1 回答 1

0

您可以通过创建一个新RegExp类来创建一个正则表达式。

公共函数正则表达式(重新:字符串,标志:字符串)

function tagCheck(tag:String, rez:String) : String {
    var tagRegex:String = tag.replace(new RegExp('[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\' + ('\/' || '') + '-]', 'g'), '\\$&');
    var regExp:RegExp = new RegExp('\\[' + tagRegex + '\\](.*?)\\[\\/' + tagRegex + '\\]', 'g');
    var matches:Object = regExp.exec(rez);
    return matches[1];
}

应该可以工作(尽管未经测试)。第一行是确保将名为的标记my.tag更改为my\.tag.

于 2013-09-13T14:03:40.197 回答