2010-11-03 18 views

cevap

163

jQuery gerek burada yok, düzenli bir JavaScript yapacağız:

var str = "Abc: Lorem ipsum sit amet"; 
str = str.substring(str.indexOf(":") + 1); 

You can test it here. Veya, .split() ve .pop() sürümü:

var str = "Abc: Lorem ipsum sit amet"; 
str = str.split(":").pop(); 

You can test that version here. Veya normal ifade sürümü (bu birkaç varyasyonlar):

var str = "Abc: Lorem ipsum sit amet"; 
str = /:(.+)/.exec(str)[1]; 

You can test that here.

+1

Harika bir yanıt, Farklı özümleri seviyorum – Aardvark

+8

Dize içinde birden fazla ':' varsa, ikinci varyant, diğerlerinde olduğu gibi ilkinden ziyade * son * birini izleyen dizeyi döndürür. JS'nin 'split()' yönteminde, Python stili '.split (':', 1) [1]' yapmanıza izin veren, sadece split-n-times seçeneğinin olmaması talihsiz bir durumdur. (Burada * isteğe bağlı bir 'sayı' argümanıdır, ancak herhangi bir makul kişinin bekleyeceği şeyi yapmaz.) – bobince

+0

@bobince - Haklısın, burada tutarlı bir varsayım var. 'label: bir şey' biçimi, eğer durum bu değilse ilk seçenekle giderdim. –

İlgili konular