我有一个Perl CGI脚本,用于在不同类型的文本中查找关键字并生成排序的输出。
目前的输出看起来像这样
表示关键字“the”。
但我想在此输出中以粗体突出显示关键字“the”。
怎么可能这样做?
我尝试使用SELECT MIN(create_date) start_date,
MAX(create_date) end_date,
COUNT(*) streak_count
FROM (
SELECT q.*,
@g := @g + COALESCE(DATEDIFF(create_date, @p) <> 1, 0) gn,
@p := create_date
FROM (
SELECT *
FROM score_streak
WHERE score > 9
ORDER BY create_date
) q CROSS JOIN (
SELECT @g := 0, @p := NULL
) i
) r
GROUP BY gn
,但它以粗体显示整个句子,而不仅仅是关键字。
我的CGI脚本如下所示:
Term::ANSIColor
感谢。
答案 0 :(得分:3)
您无法控制text/plain
文档中显示的字符样式。 Term::ANSIColor
肯定不会起作用,因为浏览器无法识别ANSI终端转义序列,它只能在您的控制台上运行
如果您将输出编写为HTML,那么您只需将<strong>...</strong>
放在要加强的单词周围
或者,更好的是,您可以编写像这样的CSS样式
.bold {
font-weight: bold;
}
并将文字换成<span class="bold">...</span>
要将文本文档转换为HTML,最简单的方法是将其包装在<pre>...</pre>
(&#34;预先格式化的&#34;)元素中,并将其放入标准HTML结构中。小于<
,大于>
和&符号&
的字符必须分别替换为对应的实体<
,>
和&
,以及您可以在<strong>
标记
与大多数现代浏览器相比也很友好的最小HTML5文档看起来像这样
<!doctype html>
<html lang=en>
<head>
<meta charset=UTF-8>
<title>Search Results</title>
</head>
<body>
<pre>
Content of my report
with words to be in bold wrapped in <strong> tags
and characters `<`, `>`, and `&` replaced by
`<`, `>` and `&` respectively
</pre>
</body>
</html>