从选择选项框中提取特定文本

时间:2011-04-14 05:24:27

标签: javascript

我可能只是在这里滥用.filter(),但我一直试图从javascript选项框中提取一段特定的文本而没有太大的成功。

简而言之,我的每个选项框都有一堆信息,然后在括号中,([x]项目留在库存中)。

我想提取[x],但我似乎无法在jQuery中使用任何类型的正则表达式过滤 - 或者,或许,我做错了。

简而言之,如果有人能完成以下内容,我将非常感激:

$('.productSelect').change(function() {
  selectedItem = $(this + 'option:selected').text();

  # Now grab the integer "x" inside the ([x] items left in stock) part of the text
  [ your code here]
});

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

这些方面的东西:

$('.productSelect').change(function() {
  selectedItem = $(this + 'option:selected').text();

  # Now grab the integer "x" inside the ([x] items left in stock) part of the text
  var n = selectedItem.match(/(\()(\d+)(\))/)[2];
});

当然,此表达式取决于您的数据格式为(number) string

答案 1 :(得分:0)

这可以满足您的需求。

var pattern=/\[(\d+)\] items left in stock/;
var qty = pattern.exec(selectedItem)[1];

答案 2 :(得分:0)

所以你应该使用JavaScript string.match函数

var s = "[100] items left in stock";

var p = s.match(regexp);