检索两个字符之间的子字符串

Exc*_*ion 4 javascript regex

我有这样的字符串

  var str = "#it
              itA
              itB
              _
             #et
              etA
              etB
             _
             etC
             etD"
Run Code Online (Sandbox Code Playgroud)

如何在#和_之间检索元素.截至目前,我正在用新行拆分文本但无法进行此操作.请帮帮我.请使用这个小提琴http://jsfiddle.net/h728C/2/

Mar*_*iss 7

如果你只想要第一个字符串BETWEEN,你可以使用:

var mys= str.substring(str.indexOf('#')+1,str.indexOf("_"));
Run Code Online (Sandbox Code Playgroud)

这回归:"it it itB"

  • 是的,我同意你的观点。下次我会照顾的:-) (3认同)

Oyb*_*bek 5

我已经在fidde 中发布了一些解决方案。它使用正则表达式

var str = $('#a').text();
var pattern = /#([\s\S]*?)(?=_)/g;
var result = str.match(pattern);
for (var i = 0; i < result.length; i++) {
    if (result[i].length > 1) {
       result[i] = result[i].substring(1, result[i].length);
    }
    alert(result[i]);
}
Run Code Online (Sandbox Code Playgroud)

去掉结尾和开头。

编辑

我已经更新了小提琴和代码。现在它去掉了开头#和结尾_。你可以使用。哪个方便。? ?