从字符串中删除方括号

时间:2013-10-03 08:11:16

标签: javascript string

我想处理一些文字以删除方括号中的任何子字符串,例如转换这个:

  

我们注意到您未能参加[预约]上次预约。   我们的目标是为患者提供最好的服务,但[我们]需要患者的合作才能做到这一点。浪费约会阻碍了我们看到所有需要咨询的患者的能力。 [如果]您需要再次取消预约,如果您能在良好的[时间]通知接待处,我们将不胜感激。

对此:

  

我们注意到您没有参加上次约会。   我们的目标是为患者提供最好的服务,但需要患者的合作才能做到这一点。浪费约会阻碍了我们看到所有需要咨询的患者的能力。您需要再次取消预约我们将不胜感激你可以通知接待处。

我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:3)

使用此正则表达式....

var strWithoutSquareBracket = strWithSquareBracket.replace(/\[.*?\]/g,'');

此处的正则表达式首先匹配[,然后匹配任何字符,直到]并将其替换为''

这是demo

答案 1 :(得分:3)

检查一下,它会对你有帮助:

var strWithoutSquareBracket = "Text [text]".replace(/\[.*?\]/g, '');

alert(strWithoutSquareBracket);

小提琴Here

答案 2 :(得分:2)

假设text是保存文本的变量名称。从您的示例中,您似乎想要删除方括号(以及所述括号)之间的所有文本,因此您必须写这个:

text = text.replace(/\[.+?\]/g, '');

\[与第一个括号匹配;然后.+?匹配任何字符,直到结束括号(由\]匹配)。最后g告诉replace将正则表达式应用于所有文本。