【问题标题】:Find substring position into string with Javascript使用Javascript在字符串中查找子字符串位置
【发布时间】:2015-11-06 08:57:55
【问题描述】:

我有以下字符串

"www.mywebsite.com/alex/bob/a-111/..."
"www.mywebsite.com/alex/bob/a-222/..."
"www.mywebsite.com/alex/bob/a-333/...".

我需要在其中的每一个中找到 a-xxx 并将其用作不同的字符串。 有没有办法做到这一点? 我尝试使用indexOf(),但它只适用于一个字符。还有其他想法吗?

【问题讨论】:

  • 这听起来像是一个 XY 问题。您需要这样做的原因是什么?
  • @navigator 你读过那篇文章吗?这是关于检索字符串的一部分,而 OP 希望在另一个字符串中找到一个字符串的索引。此外,w3fools 等...
  • 他想把它当成不同的字符串来使用:“在每一个中找到a-xxx,然后用它作为不同的字符串”
  • str.split('/')[3]?

标签: javascript jquery html string substring


【解决方案1】:

你可以使用正则表达式

var string = "www.mywebsite.com/alex/bob/a-111/...";

var result = string.match(/(a-\d+)/);

console.log(result[0]);

或匹配所有值

var strings = "www.mywebsite.com/alex/bob/a-111/..." +
  "www.mywebsite.com/alex/bob/a-222/..." +
  "www.mywebsite.com/alex/bob/a-333/...";

var result = strings.match(/a-\d+/g)

console.log(result.join(', '));

【讨论】:

    【解决方案2】:

    结合 JS 的 search() API 使用下面的 RegEx

    /(a)\-\w+/g
    

    search() 参考:http://www.w3schools.com/js/js_regexp.asp

    【讨论】:

      【解决方案3】:
      var reg=/a-\d{3}/;
      text.match(reg);
      

      【讨论】:

      猜你喜欢
      • 2012-05-21
      • 2012-08-03
      • 2017-03-27
      • 1970-01-01
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      • 2014-05-06
      相关资源
      最近更新 更多