我试图在括号之间获取信息,但我的模式找不到匹配。
我正在使用的模式是
/var\scool=(.*);<\/script>/;
示例文字:
<script>
var cool={
//stuff in here
};
</script>
答案 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