2011-12-05 47 views
3

所以,我有:JavaScript的正則表達式需要捕捉新線

/`{3}(?:(.*$)\n)?([\s\S]*)`{3}/m 

它匹配這樣的事情罰款:

```javascript 
alert('Hello World'); 
//It wont break even if i throw in ``` in this comment! 
``` 

但不幸的是它也匹配:

```javascript 
alert('Hello World'); 
``` 

```javascript 
alert('OH NOES!'); 
``` 

由於一個匹配,但它應該是兩個。它應該查找所有內容,包括其他```內部,但一旦它看到一個雙行換行符,它應該開始尋找另一個匹配。

回答

4

使用非貪婪.*?代替.*

+0

謝謝!看起來像。因爲它不會讓我把它標記爲正確的那麼長時間,所以我在大約10分鐘內標記它。甜蜜的感謝! –