Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在js中使用.match(regEx)仅获取不带分隔符的内部字符串?_Javascript_Jquery_Regex_String - Fatal编程技术网

Javascript 如何在js中使用.match(regEx)仅获取不带分隔符的内部字符串?

Javascript 如何在js中使用.match(regEx)仅获取不带分隔符的内部字符串?,javascript,jquery,regex,string,Javascript,Jquery,Regex,String,你好,我正在尝试用js解析xml字符串。我的字符串与下面的字符串相似。我正在使用正则表达式的.match()函数 var str='<rate val="xyz"></rate> <rate val="klm"></rate> <rate val="mnp"></rate>'; var result=str.match(/val="(.+?)"/g); 但它给了我 ["rate val="xyz"","rate val="

你好,我正在尝试用js解析xml字符串。我的字符串与下面的字符串相似。我正在使用正则表达式的.match()函数

var str='<rate val="xyz"></rate> <rate val="klm"></rate> <rate val="mnp"></rate>';
var result=str.match(/val="(.+?)"/g);
但它给了我

["rate val="xyz"","rate val="klm"","rate val="mnp""]

如何仅获取没有属性名称的值

您可以使用
filter
map
的组合来获得数组中元素的属性,而不是使用正则表达式:

var str = '<rate val="xyz"></rate> <rate val="klm"></rate> <rate val="mnp"></rate>';
var result = $(str).filter('rate').map(function() {
    return $(this).attr('val');    
}).get();

console.log(result);
var-str='';
var result=$(str).filter('rate').map(函数(){
返回$(this.attr('val');
}).get();
控制台日志(结果);

查找“非捕获组”。我注意到你恢复了我的编辑--你不应该以“你好”开始提问
var str = '<rate val="xyz"></rate> <rate val="klm"></rate> <rate val="mnp"></rate>';
var result = $(str).filter('rate').map(function() {
    return $(this).attr('val');    
}).get();

console.log(result);