正则表达式匹配脚本标记内的花括号内的子字符串

时间:2016-08-10 20:15:01

标签: javascript regex

我试图在括号之间获取信息,但我的模式找不到匹配。

我正在使用的模式是

/var\scool=(.*);<\/script>/;

示例文字:

<script>
  var cool={
  //stuff in here
  };
</script>

2 个答案:

答案 0 :(得分:1)

/var\scool\=(.*);\s<\/script>/s

答案 1 :(得分:1)

你有的正则表达式有一个带有*量词(.*)的点,其匹配除换行符之外的零个或多个字符,尽可能多。在JavaScript正则表达式中,要匹配包含换行符在内的任何字符,您可以使用[^][\s\S][\d\D][\w\W]

另一个问题是;</script>之间有空格,因此需要\s*

使用

/var\scool=([\s\S]*);\s*<\/script>/

请参阅regex demo