2
回答
正则表达式替换
终于搞明白,存储TCO原来是这样算的>>>   

在写tornado的template, 需要把 src=后面的内容

src= {{ static_url("/img/089.jpg") }}

替换成()里面的内容:

('../static/img/089.jpg')

因为正则表达式不太熟悉,请教大神怎么写?

举报
Mr.Stack
发帖于1个月前 2回/125阅
#!/usr/bin/python
import re
str = "src= {{ static_url(\"/img/089.jpg\") }}"
str = re.sub(r'src\s*=\s*\{\{\s*static_url\("([^"]+)"\)\s*}}', "('../static\\1')", str)
print str

 

--- 共有 1 条评论 ---
Mr.Stack谢谢兄弟, 你给了我一个学习RE的机会 1个月前 回复

这个坑,还是我亲自填吧~~~
原题是要把tornado的模板语法写的路径抽取出来,用js换成相对路径
因为可变部分其实只有数字,那么用简单的正则搞一搞,JS代码如下:

var str = "{{ static_url(\"img/289.jpg\") }}";
var aim = '../static/img/' + str.match(/\d+/g) + '.jpg';
console.log(aim);

 

--- 共有 2 条评论 ---
Mr.Stack介个好 1个月前 回复
Andyfoo晕,你发的分类是python,我也不会就现学了下,js我还是比较熟的。 var str = "src= {{ static_url(\"/img/089.jpg\") }}"; str = str.replace(/src\s*=\s*\{\{\s*static_url\("([^"]+)"\)\s*}}/ig, "('../static$1')"); console.log(str); 1个月前 回复
顶部