2013-04-04 2 views
0

Привет У меня есть некоторые ВАР, как это:Split переменная в JS или JQuery

var a = Base-Shirt_Stripe.jpg 
var b = Closed-Flatknit-Collar_Stripe.png 

Как создать два новых ВАР как:

var c = Base-Shirt 
var d = Stripe 

или

var e = Closed-Flatknit-Collar 
var f = Stripe 

в основном разделите на _ удалите _ и удалите расширение.

+0

[Гугле ваш точный вопрос:)] (http://www.google.com/#hl=en&output = поиск & sclient = пси-AB & Q = Split + A + переменную + в + JS + или + JQuery & OQ = Разделить + а + переменная + в + JS + или + JQuery & gs_l = hp.3..33i29i30l3.2964.2964.0.4491.1.1.0.0. 0.0.112.112.0j1.1.0 ... 0,0 ... 1c.2.8.psy-ab.T6a1KvKwTC0 & = 1 PBX & БАВ = on.2, or.r_qf. & BVM = bv.44770516, d.aWM & Fp = f18f27e046486f57 & BIW = 1300 & БиГ = 869) –

ответ

1
//for example, we take a 
var a = 'Base-Shirt_Stripe.jpg'; 

//then we take the part of a before the dot 
//and split between `_` 
//split returns an array 
var split = a.substring(0,a.indexOf('.')) 
      .split('_'); 

//split is an array, so we use indices to indicate which 
console.log(split[0]); //Base-Shirt 
console.log(split[1]); //Stripe 

Sample here. Вы можете сделать то же самое для своего b

+0

Спасибо, это именно то, что я как надеяться получить! – user2238083

-1
//Javascript Split can divide it into parts. Javascript Split return type is array.' 

//e g. 

var a = Base-Shirt_Stripe.jpg 
var parts = a.split('_'); 

console.log(parts[0]); 
    //output 
    " Base-Shirt " 

//parts[0] contain base-shirt and parts[1] contain Stripe.jpg. 
0

Для начала вам нужно сделать их строками, а затем использовать String.split(), чтобы разделить строку на массив разных частей.

jsFiddle

var a = "Base-Shirt_Stripe.jpg" 
var b = "Closed-Flatknit-Collar_Stripe.png" 

var aSplit = a.substr(0, a.lastIndexOf('.')).split('_'); 

var c = aSplit[0]; 
var d = aSplit[1]; 

var bSplit = b.substr(0, b.lastIndexOf('.')).split('_'); 

e = bSplit[0]; 
f = bSplit[1]; 

Вы также могли бы взять на себя удаление раскладную в свою собственную функцию, используя String.lastIndexOf() и String.substr().

function removeExtension(file) { 
    return file.substr(0, file.lastIndexOf('.')); 
} 
+0

'removeExtension' не будет работать для имени файла, такого как' 'Dress.Base-Shirt_Strip.jpg" '. Я предлагаю '' Dress.Base-Shirt_Strip.jpg ".split ('.'). Slice (0, -1) .join ('')' – rab

+0

Обновлено с более надежным решением. –

0

может быть, вы могли бы сделать, как

var a = "Base-Shirt_Stripe.jpg" 
var k = a.replace(/(\.\w*)$/g, "").split("_"); 

alert(k[0]); 
alert(k[1]); 

вот fiddle

Смежные вопросы