1

我有以下文字。[Account].&[1] 我只想从此字符串中检索 Account。我这样写正则表达式。

var rexp =  /\[[a-z][A-Z]\]/g;
var matchStr = id.match(rexp);

但它不起作用。这有什么不对吗?请帮我。

4

2 回答 2

2

/\[[a-z][A-Z]\]/精确匹配一个小写字符 ( a-z) 后跟一个大写字符 ( A-Z)。相反,请考虑/\[[a-zA-Z]+\]/哪个评估为“一个或多个小写或大写字符”。

i标志(不区分大小写)可以与[a-z][A-Z]:执行相同的操作/\[[a-z]+\]/gi

于 2012-04-25T09:12:46.993 回答
1

您需要将其更改为:\[[a-zA-Z]+\]/g.

在您当前的正则表达式中,您希望匹配一个小写字符串,后跟一个大写字符串。由于您要匹配的字符串以大写字母开头,后跟更多小写字母,因此您的正则表达式将不起作用。

我建议的正则表达式应该匹配由一个或多个(+运算符)字母(小写和大写[a-zA-Z])组成的任何字符串,这些字母位于方括号[].

于 2012-04-25T09:12:01.057 回答