我使用的脚本基本上从HTML文件中捕获HTML元素并将它们发送到MySQL数据库。我用
title = line.replace("<!--h1-->",'').replace("<h1>",'').replace("</h1>",'')
用于捕获H1
。现在,如果我跑
print title
print 'post_title = %(title)s'%locals()
然后Python似乎一直在title
的开头添加2个标签。
是否有人知道造成这种情况的原因以及如何防止这种情况?
答案 0 :(得分:0)
删除空格的方法是使用<span ng-repeat="task in tasks">
<input type="checkbox" ng-model="task.status"> {{task.item}}
</span>
string method。
strip()
或者,如果您知道在字符串的开头总是有两个不需要的标签,只需缩短标题即可。以下代码用除字符串前两个字符之外的所有字符替换title。
title = line.replace("<!--h1-->",'').replace("<h1>",'').replace("</h1>",'')
print 'post_title = %s' % title.strip()
修改的
另一种方法是使用regular expressions。与字符串的title = title[2:]
方法类似,可以使用正则表达式替换方法将双选项卡(replace
)替换为空字符串(\t\t
)。
''
import re
title = line.replace("<!--h1-->",'').replace("<h1>",'').replace("</h1>",'')
# Replace two consecutive tabs.
title = re.sub('\t\t', '', title)
模块如此强大的原因在于您甚至可以使用re
(或^
)将搜索限制在相关字符串的开头(或结尾)字符。
$
答案 1 :(得分:0)
在strip()
字符串上调用title
:
title = line.replace("<!--h1-->",'').replace("<h1>",'').replace("</h1>",'').strip()
print 'post_title = %(title)s' % locals()
没有必要以这种方式使用locals()
;你已经拥有了所需的变量,所以:
print 'post_title = %s' % title
或
print 'post_title = {}'.format(title)
会更好。