javascript在同一个字符{n}中获取字符串的子字符串

时间:2016-02-20 01:23:09

标签: javascript

我有字符串:

"A1111A2222A3333A4444"

我如何获得字符串:

"A1111"

我需要通过指定' A'的数量来获得它。最后的字符,并从总字符串中删除此部分。

编辑:

我有一个由字符串' A'分隔的大字符串,例如:

"A11A22A33A44A55A66A77A88A99"

我需要的是一个函数,它会给我从0到n' A'的索引的子字符串。 chars away。例如,getSubstring(3)将返回:

"A11A22A33A44A55A66"

2 个答案:

答案 0 :(得分:3)

你可以:

  1. split使用字符作为分隔符的字符串
  2. 使用slice获取包含除最后n个项目之外的所有项目的子数组
  3. join支持该子阵列
  4. function getSubstring(str, ch, n) {
      return str.split(ch).slice(0, -n).join(ch);
    }
    getSubstring("A1111A2222A3333A4444", "A", 3); // "A1111"
    getSubstring("A11A22A33A44A55A66A77A88A99", "A", 3); // "A11A22A33A44A55A66"
    

答案 1 :(得分:0)

鉴于

var str = "A1111A2222A3333A4444";
var pattern = /A1*4/;

search()会告诉您找到匹配的索引

str.search(pattern)

match()将返回'A1111'。 (匹配准确地返回一个数组,其中[0]是被搜索的字符串,[1]是字符串的匹配部分。

str.match(pattern)[1];