在 jQuery 中选择一个非标签元素

Selecting a non-tag element in jQuery

我的 HTML 中有多个标签,如下所述。注意像 BBcode 这样的方括号。

[oembed]http://rich-media.url[/oembed]

我需要使用 jQuery 获取 URL 的值。任何帮助将不胜感激。

您可以使用正则表达式来检索大括号之间的内容,如下所示:

var content = '[oembed]http://rich-media.url[/oembed]';
var matches = /\[.+\](.+)\[.+\]/g.exec(content);
console.log(matches[1]); // = 'http://rich-media.url'

请查看更新后的 fiddle:

https://jsfiddle.net/hxa4m8Ld/1/

var content = $('#mytags').text();
var currIndex = 0;
while(currIndex < content.length){
    var stIndex = content.indexOf("[oembed]",currIndex);
  var edIndex = content.indexOf("[/oembed]",stIndex);
  if(stIndex > -1 && edIndex> -1){
    var url = content.substring(stIndex+8,edIndex);
    currIndex = edIndex+9;
    console.log(url);
  }
  else
  {
    currIndex = content.length;
  }
}

我使用简单的 javascript 字符串函数来获取所需的 url。希望对你有所帮助。

试试这个代码

var content = $('#mytags').html();
var matches = /\[.+\](.+)\[.+\]/g.exec(content);

content.replace(/\[.+\](.+)\[.+\]/g, function(m, key, value){

      //this is url
      console.log(key);

});