使用jquery查找特定字符串

时间:2014-01-07 15:41:43

标签: jquery

我使用'change'函数将selectbox的值放入输入

$("#afa_select").change(function() {
    var nd_value = $('#afa_select :selected').text();
    $("#nd_hidden").val(nd_value);
});

selectbox的选项包含以下字符串:

text 10 Jahre
another text 6 Jahre
just another text 12 Jahre
another text with a figure e.g. 1000 6 Jahre
another text with a figure e.g. 3234 6 Jahre

我需要找到字符串“Jahre”前面的数字,并将此值放入输入#nd_hidden。

2 个答案:

答案 0 :(得分:5)

使用regular expression

这是微不足道的
var text = "another text with a figure e.g. 1000 6 Jahre";
var result = /(\d+) +Jahre/.exec(text);
if (result) {
    console.log(result[1]); // "6"
}

如果您需要它作为数字:

var num = parseInt(result[1], 10);

正则表达式说:“查找字符串中的第一个匹配项,该字符串是一系列数字,后跟一个或多个空格,后跟字符Jahre,并捕获捕获组中的数字。”如果未找到匹配项,则result将为null。如果找到匹配项,则第一个捕获组的内容位于result[1]

答案 1 :(得分:2)

如果您不想使用正则表达式,也可以在空格上拆分字符串并获取n-2位置。

var selectNumber = nd_value.split(" "); 
var yourNumber = selectNumber[selectNumber.length-2]; 

console.log(yourNumber);