var ss= "<pre>aaaa\nbbb\nccc</pre>ddd";
var arr= ss.match( /<pre.*?<\/pre>/gm );
alert(arr); // null
我希望可以拾取PRE块,即使它跨越换行符也是如此。我以为'm'标志可以做到。才不是。
发布前在这里找到答案。因为我以为我知道JavaScript(读了三本书,工作了几个小时),并且SO上没有现有的解决方案,所以无论如何我都敢发表。在这里扔石头
所以解决方案是:
var ss= "<pre>aaaa\nbbb\nccc</pre>ddd";
var arr= ss.match( /<pre[\s\S]*?<\/pre>/gm );
alert(arr); // <pre>...</pre> :)
有人有没有那么神秘的方式?
编辑:这是重复的,但是由于它比我的更难找到,因此我不会删除。
它建议[^]
作为“多行点”。我仍然不明白的是为什么[.\n]
不起作用。猜猜这是JavaScript的可悲部分之一。