使用RegExp和jQuery查找和解析dom元素值中的url

Find and parse url in dom-element value using RegExp and jQuery

本文关键字:元素 url dom RegExp jQuery 查找 和解 使用      更新时间:2023-09-26

这是我的html代码的一部分:

<span id="ctl08"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" height="50" width="150">
              <param name="movie" value="/Flash/Dg_Inverse.swf?secEncCode=9e2ec595c926065318629a6dfea6b2ed">
              <param name="quality" value="high">

我需要找到这样的元素在我的代码:

<param name="movie" value="/Flash/Dg_Inverse.swf?secEncCode=9e2ec595c926065318629a6dfea6b2ed">

我也想知道如何得到只有9e2ec595c926065318629a6dfea6b2ed作为一个变量?

那么如何使用jQuery和RegExp找到元素的值?

尝试:

var value = $("param[name='movie']").val();//get attribyte value
if(value && (value = value.match(/secEncCode=('w+)/))){//reg exp
  value = value[1];//get first pocket
  console.log(value);//res
}
http://jsfiddle.net/xbQxw/

update by comment

如果你想改变secEncCode值:

var param = $("param[name='movie']"),//get obj
    value=param.val(),//get attribyte value
    key; 
 if(value && (key = value.match(/secEncCode=('w+)/))){//reg exp
     key = key[1];//get first pocket
     param.val(value.replace(key, "YOUR NEW KEY"));//replace key
 }

如果您想从值

中提取结束部分

首先选择元素

$('param[name=movie]')

,那么你可以使用分割或正则表达式或任何你想要的。下面是一个使用分割

的示例
var yourvariable = $('param[name=movie]').val().split('=')[1];
http://jsfiddle.net/XbBbC/

使用jQuery属性-end -with选择器:

var strmatch = "secEncCode=9e2ec595c926065318629a6dfea6b2ed";
$element = $('[value$='+strmatch+']'); // a jQuery object, not a DOM element