2011-06-22 8 views
0

私はimg要素からsrc属性を取得するための非常に基本的なjqueryスクリプトを作成しました。長文で言えば、サムネイルのsrc属性に含まれる数字に基づいて、同じID番号を使用して対応するメインイメージを取得します。可変長のJQuery/Jscript文字列操作

サンプルサムサムネイル:カタログ/ p1-t1.png | p = pieceと1 = id、t1 = thumb 1 サンプルmainpic src値:カタログ/ p1-1.png |ここで、p =ピースと1 = ID、親指1

ための第二1 =メインpicがそれはすべて1桁の数が二桁になったので、何か使ってまでうまく働いていた:

$string = $string.substring(12,13); 

する仕事に中止(明らかなはい)。

私は親指の 'カタログ/ p1-t1.png'のsrc値からt1かt33かt999のいずれかで 't'の後の '1'を取得したいと考えています。事前に

おかげで野生の正規表現が表示されます G.Campos

答えて

4

var string = 'catalog/p1-t666.png', 
    re = /\/p(\d+)-t(\d+)/ 
    result = re.exec(string), 
    piece = result[1], // 1 
    thumb = result[2]; // 666 

あと少し軽いdemoが表示されます。

+2

非常に効果的です! –

+0

ありがとう。それはかなりまっすぐ進む – Sotkra

0

期間のあなた最初のスプリット場合は、最小限の正規表現を使用することができます「」:

var x = 'p1-t123.jpg'; 
alert(x.split('.')[0].match(/\d+$/)); 

画像パスが一つだけの期間を持っていることを仮定。そうでない場合は、最後のピリオドの後に後続のものをトリムして、末尾の数字をつかむことができます。

alert(x.replace(/[^\d]+$/,'').match(/\d+$/)); 
+0

もありがとう、ありがとう – Sotkra