2016-03-24 35 views
-2
1.5V6A 6Q2A 6Q 5Q 
2.FA 7A EQ2A 799Q 
3.M Y77A279791 
4.V59 2 5A266 
5.Q7Q E7Q 7 7AQ2A 7A29 

Bu tür boşlukları ortada ve belirli bir uzunlukta olmaksızın bulmak için normal ifade/joker karakter ne olurdu?Bu tür bir dize için regex nedir?

Bunu çözemiyorum. Onları bulmak ve değiştirmek istiyorum ama her birinin ardından bir satır sonu ile.

Görünme bu tür 5V6A 6Q2A 6Q 5Q bulup

Örnek sonrasında (LINEBREAK) ile değiştirin:

5V6A 6Q2A 6Q 5Q Mr.Christopher M Krieg Indianapolis, IN $ Sekiz Milyon Üç Yüz Beş Bin Yirmi Yüz Otuz Bir VE On% Yirmi Yılı ve Yüzde On Miktarı (Satınalma Değerinin Azaltılması% 20.75) (Aylık Temel Azalış% 7.55) (Toplam Faiz Azaltma% 1957) Dr.Kirk C Lucero FA 7A EQ2A 799Q

sonradan bir satır sonu ortaya çıkarmak. Mümkün mü?

+0

'^ [AZ \ d] + (\ s [AZ \ d] +) + $' –

+0

Neden karmaşık ? \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\}. \ Daha da kolay, sadece yeni satırlarla yerleri değiştirin. – Amadan

+0

Teşekkürler. Bir metin dosyasında bu tür bulmak için yüce metin kullanıyorum. Bulmak istiyorum, her birinin sonunda bir satır sonu ile aynı yerine koyun. Hepsinin sadece büyük harfleri, sayıları ve aralarındaki boşlukları vardır. Yardımcı olabilirseniz ... – Vivek

cevap

0

Bu bir ok gibi görünüyor:

\d+\.(\w+(|$))+ 

Testi:

`1.5V6A 6Q2A 6Q 5Q 
2.FA 7A EQ2A 799Q 
3.M Y77A279791 
4.V59 2 5A266 
5.Q7Q E7Q 7 7AQ2A 7A29` 
.split("\n").every(RegExp.prototype.test.bind(/\d+\.(\w+(|$))+/)) 
+0

\ w. + \ D. + (\ W + (| $)) Bu, gereksinimim için bir şekilde yardımcı görünüyor. Ama aynı şekilde nasıl değiştirileceğini anlayamıyorum, ancak sonradan bir çizgi eklemi ekleyelim. – Vivek