【发布时间】:2014-04-10 02:20:05
【问题描述】:
我尝试使用正则表达式为单词添加单引号,注意表达式中是否有单引号、双引号或无引号。我有这个
find . -type f -print0 | xargs -0 sed -i "s/{% url \([^\' >][^\" >][^ >]*\)/{% url \'\1\'/g"
例子
{% url something foo bar %}
{% url "something" foo bar %}
{% url 'something' foo bar %}
应该替换为
{% url 'something' foo bar %}
万一
{% url "something.else" foo bar %}
它变成了
{% url '"something.else"' foo bar %}
单引号不能在单引号中转义,双引号/双引号也一样,不是吗?我该怎么做?正则表达式很棒,但也很困难。谢谢!!
起源是 Django 1.5 中的 url 问题
"Django release 1.5: 'url' requires a non-empty first argument. The syntax changed in Django 1.5"
我找到了更改为双引号 here 的答案。
但是单引号也会出现同样的问题,将'word'替换为“'word'”。
【问题讨论】:
-
要引起对您的问题的充分关注,请考虑正确格式化您的帖子。
-
对不起,我以为它已经解释清楚并格式化了。我不明白你的格式是什么,这是我的第一个问题,但始终是一个参考网站,也会说西班牙语,所以如果有拼写错误,我也借此机会道歉;)