2016-04-08 52 views
2

Tüm \n'u ayıran bir filtre oluşturmaya çalışıyorum ve bunları \n\n olarak yeniden ekleyin. Tüm \n\n kombinasyonlarını atlamak ve sadece tek \n hedeflemek için bir yolu var mı? Sorun şu ki, filtrenin patladığını girdikten sonra, mevcut çift boşluklara ek alanlar ekliyorum. çalışma keman: https://jsfiddle.net/oe7axeab/701/javascript bölünmüş (' n') ve değil (' n n')

 filters: { 
     lyrics: { 
      write(input) { 
       var line = input, 
         bomb = line.split("\n"), 
         group = bomb.join("\n\n"); 

       return group; 
      }, 
     }, 
     marked: marked 
    } 
+2

deneyin .Kapağı ("\ n \ n", 'FOOBARBLABLABLA'); sonra tek tek, ve sonra da .replace ("FOOBARBLABLABLA", "\ n \ n") geri – KoIIIeY

+1

https://jsfiddle.net/oe7axeab/702/ – KoIIIeY

+0

tek olanları değiştirmek istiyorsanız \ n \ n \ n bunu \ n \ n \ n \ olarak değiştirmek istediğinizde veya bu – abhinsit

cevap

1

Ben \ n sadece tek bir örneğini seçecektir bir düzenli ifade oluşturmak ve bu n \ n

var str = 'test \ n test1 \ dönüştürmek çalışıyorum \ n \ n test2 \ n test3 \ n \ n ';

**var regex = /([^\n]+)\n([^\n]+)/g;** 

    if (str.match(regex)) { 
     str = str.replace(regex, "$1" + "\n\n" + "$2"); 
    } 

Çıkış: 'test \ n \ n Test1 \ n \ n dnm2 \ n \ n Test3 \ n \ n'

İlgili konular