字符串的缩进部分忽略案例python,HTML

时间:2013-04-30 10:15:35

标签: python search-engine

我想为我的搜索引擎加粗文本部分...主要引擎是Python ... 我在一个名为q(用于查询)的var中有搜索词......对于这个例子我们假设搜索词是“BlOg”我计算搜索结果并且我想要替换所有出现的“BlOg”而忽略了这个案例然后应该使用相同的文本替换所有“博客”和“博客”和“博客”等,但包含在<b>标签中......

例如:

Search term: "BlOg"<br>
result 1 before: "CS Blog"<br>
after: "CS &lt;b&gt;Blog&lt;b>

result 2 before: "Stacker blog" [notice the "blog" is lowercase]<br> 
after: "Stacker &lt;b&gt;blog&lt;b>

请注意,我没有改变案例;我刚用<b>标签包围了它。

1 个答案:

答案 0 :(得分:0)

尝试:

import re
bolded = bolded = re.sub(r"(?i)(%s)" % query, r"<b>\1</b>", content)

示例:

>>> import re
>>> content = "fox iN a blog"
>>> query = "in"
>>> bolded = re.sub(r"(?i)(%s)" % query, r"<b>\1</b>", content)
>>> bolded
'fox <b>in</b> a blog'

在2.7中添加了将IGNORECASE标记传递给sub的功能,因此我在正则表达式模式前添加了(?i)以使其不区分大小写。