正規符合
以下是字串
我是程式碼
##javascript
#var a = 1;
console.log(a);
#javascript
##…
我是中文:
今天天氣真好
…
我是程式碼
##javascript
#var b = 1;
console.log(b);
#javascript
# #…
現需要取得所有##javascript#和#javascript##之間的內容,該怎麼寫?包括所有空格和換行。
我試過[\s\S]*,但那樣的話如果存在多段類似的程式碼(如上圖),他就直接配對到最後一個#javascript##,中間的都不認。 。很無奈啊,求助。 。
暈,segment的編輯器怎麼使用非markdown模式的。 。 。把我的程式碼都變成樣式了
给我你的怀抱2017-05-19 10:47:11
正規用exec可以擷取多個值,但並會有髒數據,所以其實用split會比較方便
var string = '##javascript# var a = 1;console.log(a);#javascript##…我是中文:今天天气真好…我是代码 ##javascript# var b = 1;console.log(b);#javascript##…';
var arr = string.split("#javascript##").map(function(value){
return value.match(/##javascript#([\s\S]*)/)? value.match(/##javascript#([\s\S]*)/)[1] : value;
}
);
console.log(arr);