在这种情况下如何使用正则表达式?

时间:2014-09-04 09:14:04

标签: javascript jquery

我的变量为30_KK_1_KK_2

如何在第一个KK_和第二个KK_之后获得该值?

以便First KK_的输出为1和

第二个KK_是2

我试过这种方式

var str =  "30_KK_1_KK_2";
var n[] = str.split('_KK_');
alert(n[0]);
alert(n[1]);

2 个答案:

答案 0 :(得分:1)

你有几个错别字。

1)字符串常量

周围没有字符串引号

2)var n[]无效......只是var n

3)你需要得到元素1和2,因为元素0是“30”

var str =  "30_KK_1_KK_2";
var n = str.split('_KK_');
alert(n[1]);
alert(n[2]);

JSFiddle:http://jsfiddle.net/TrueBlueAussie/w3mLgowc/1/

对于这样一个简单的问题,正则表达式可能有点过分(并且分隔符已修复)。

答案 1 :(得分:0)

如果您想真正使用Regex,可以尝试以下代码:

var str =  "30_KK_1_KK_2";
regex = /.*KK_(\d*)_KK_(\d*)/g;
value_1 = str.replace(regex,"$1");
value_2 = str.replace(regex,"$2");
alert(value_1);
alert(value_2);