2016-03-30 21 views
1

Bir dizgede tüm 4 büyük harf grubuna ihtiyacım var.Regex ifadesi Bütün harfleri vermek

Tableau kullanarak tüm küçük harfleri ve ek karakterleri değiştirmek için kullanıyorum. Sadece 4 string uzunluğunda büyük harflerin örneklerini almak istiyorum. Ben [^A-Z]{4}/g yazdım

"The following trials have no study data-available, in the RBM mart. It appears as is this because they were . In y HIWEThe trials currently missing data are: JADA, JPBD, JVCS, JADQ, JVDI, JVDO, JVTZ"

: Ben Regex_extract kullanamaz bilmek lazım google tarafından

My Dize (/ g yana desteklenmez).

istediğim:

HIWE JADA JPBD JVCS JADQ JVDI JVDO JVTZ

Ama bu da bana dahil tek harf ve boşluk veriyor.

((?<=[A-Z]{4})|^).*?(?=[A-Z]{4}|$) 

açıklanması:

Teşekkür

+0

ne yapar [a-zA-Z] * $ belirtin? – user1078682

+0

Sanırım 4 büyük harfli kelime dışındaki tüm * kelimeleri * ayıklamak istersiniz? ['\ B (?! [A-Z] {4} \ b) \ w + \ b' deneyin (https://regex101.com/r/gI2fC0/1) –

+0

Belki de boş alan tarafından istemediğinizi değiştirerek? Ayrıca hangi dili/aracı kullanıyorsunuz? –

cevap

3

Sen this regex kullanabilirsiniz

(     # one of: 
    ^    # the starting position 
    |     # or 
    (?<=[A-Z]{4}) # any position after four upper letters 
)     # 
.*?     # match anything till the first: 
(?=     # position which in front 
    [A-Z]{4}   # has four upper letters 
    |     # or 
    $    # is the string's end 
)     # 

Herhangi bir şüphe sormaya çekinmeyin :)

+0

Bu String için durum gibi bir dize için çalışıyor "H9X-MC-GBGE: Duplicate Blood Basınç (Ziyarette) Analitik, gerçek kopyalar olmayan öğeleri listelemektedir. " Ve hiç eşleşme olmadığında, geri dönmez, boşa dönmez .. – user1078682

+0

@ user1078682. Maalesef, anlamadım, soruyu tam olarak girilen ve (istenen) çıktıyla güncelleyebilir misiniz? Yakında döneceğim ( –

+0

Ben @Washington Guedes teşekkürler. – user1078682