ページ 11

【解決済】イベント名から囲われた数値の取得

Posted: 2017年10月03日(火) 23:05
by あっすん
お世話になります。
イベント名から特定の記号等で囲われた数値の取得についてお聞きしたいのですが

コード: 全て選択

var aaa = $dataMap.events[11].name
var bbb = aaa.replace(/[^0-9^\.]/g,"");
var ccc = parseInt(bbb, 10);
上記で一応数値の取得自体はできたのですが例えばイベント名が EV011 モブ[2] だった場合
全ての数値を取得してしまい結果は 112 となってしまいます。
イベント名の [] で囲われた 数値の2 だけを取得する方法を教えて頂ければありがたいです。
どうぞよろしくお願いいたします。

Re: イベント名から囲われた数値の取得

Posted: 2017年10月03日(火) 23:47
by ツミオ
こんばんは。
イベント名に[]が一つしか使われていないことが前提ですが、以下のようなコードはいかがでしょうか。

コード: 全て選択

    var target = 'EV011 モブ[2]';
    var result = target.match(/\[(\d+)\]/);
    console.log(result[1]);//結果は2
resultには最初にマッチした文字列全体と、サブマッチ文字列(丸括弧でくくられている部分)が配列として入っています。

Re: イベント名から囲われた数値の取得

Posted: 2017年10月04日(水) 00:22
by あっすん
ツミオさん

こんばんは。
早速のご返信ありがとございます!
無事に 数値の2 取得できました。
マッチ、サブマッチ、勉強になります。
今回もお世話になりありがとございました!