0

我需要使用 jquery 从字符串中查找路径信息并将结果推送到数组中。

字符串输出看起来像;

 "var rsr = Raphael('rsr', '270', '266'); 
 var path_a = rsr.path('M144.869,199c0,7.659-5.479,13.139-13.14,
 13.139 c-7.659,0-14.598-5.479-14.598-13.139s6.209-13.139,13.869-
 13.139S144.869,191.341,144.869,199z'); path_a.attr({fill: 'non .... etc" 

我需要在 rsr.path() 中检索每次出现的路径信息;

我将如何实现这一目标?在我的字符串上使用 $.each 和正则表达式?

谢谢凸轮

4

2 回答 2

0

JavaScript 将允许您使用正则表达式执行此操作:

var s = " var rsr = Raphael('rsr', '270', '266'); var path_a = rsr.path('M144.869,199c0,7.659-5.479,13.139-13.14, 13.139 c-7.659,0-14.598-5.479-14.598-13.139s6.209-13.139,13.869- 13.139S144.869,191.341,144.869,199z'); path_a.attr({fill: 'non .... etc";

var regex = /M144\.869(.+?)869,199z/g;
var matches = regex.exec(s);

match[0] 然后包含捕获组。

于 2013-01-20T16:29:16.517 回答
0

我发现这行得通..

 $(document).ready(function(){

    $('form.svg-convert').submit(function(event){

        var content = $(this).find('textarea').val();
        process(content);

        event.preventDefault();
    })
})


var process = function(c){

    var content = c,
        paths = [];

    var contentSplit = content.split('path(');
    contentSplit.shift(); 

    $.each(contentSplit,function(i,v){

        var path = v.split(')');
        path = path[0];
        paths.push(path);

    });

} 
于 2013-01-20T16:52:41.363 回答