Coldfusion 如何确定列表中的给定单词或短语是否在锚定标记内?

Coldfusion 如何确定列表中的给定单词或短语是否在锚定标记内?,coldfusion,coldfusion-10,Coldfusion,Coldfusion 10,我们有一个基于ColdFusion的站点,它涉及大量对HTML知之甚少或一无所知的“文档作者”。他们创建的“文档”由存储在数据库表中的HTML组成。它们使用一个编辑器接口。他们创建的内容被输出到页面的特定区域。文档中经常有大量读者可能不熟悉的技术术语,我们希望自动显示工具提示 我和另一位程序员希望有一些代码,根据SQL server上表格中的单词列表,将“工具提示”代码插入到页面中。数据库中的“dictionary”表具有唯一的ID、我们将查找的单词/短语以及工具提示中显示的相应定义 例如,我们

我们有一个基于ColdFusion的站点,它涉及大量对HTML知之甚少或一无所知的“文档作者”。他们创建的“文档”由存储在数据库表中的HTML组成。它们使用一个编辑器接口。他们创建的内容被输出到页面的特定区域。文档中经常有大量读者可能不熟悉的技术术语,我们希望自动显示工具提示

我和另一位程序员希望有一些代码,根据SQL server上表格中的单词列表,将“工具提示”代码插入到页面中。数据库中的“dictionary”表具有唯一的ID、我们将查找的单词/短语以及工具提示中显示的相应定义

例如,我们要寻找的一个词/短语是“Scrum大师”。如果出现在文档区域,我们需要在单词周围插入代码来创建工具提示。要做到这一点,我们需要看看是否存在某些条件。这些单词是否在锚定标签中?如果是,是否已经有标记的标题值(标题用于包含要在工具提示中显示的信息)?如果存在标题标签,请不要执行任何操作。如果单词不在锚定标记中,那么我们将在单词周围放置锚定标记以及包含定义的标题

我们使用的工具提示代码是通过jQuery()实现的。它是快速和简单的使用。我们只需要根据字典表找出如何动态使用它

你对如何进行这项工作有什么建议吗

我希望这可能有一个功能,我可以使用,但这似乎不是我想要做的正确的技术,但我可能是错误的,我很高兴被纠正


我们有大量此类文档,因此手动插入和维护工具提示代码不是一个选项。

使用以下内容更新您的内容:

strOut = ReplaceList(strIn, ValueList(qryTT.find), ValueList(qryTT.replace));
由于单词由空格分隔,因此qryTT.find需要有空格。replace列需要包含一些原始内容。你必须小心单词后面加逗号或句点


我会缓存结果,因为我希望它会占用大量内存。

感谢您的回复,但插入工具提示代码不是问题所在。它正在测试,看看我们正在寻找的字符串是否在锚定标签内。您可能想检查一下:如果正在查找“scrum master”,那么我将忽略该事件,因为它位于锚定标记中,并且有一个标题。但是,如果它不在锚定标记的内部,那么我会在它周围放置锚定标记。ColdFusion使插入文本变得相当简单,但没有一个字符串操作函数来告诉您给定字符串中的元素。我开始怀疑我是否应该尝试提出一个正则表达式,它将根据我的替换标准获取引用。我会查看那一页。再次感谢!jSoup正是正确的技术。e、 g.使用选择器
a:contains(text)
查找包含文本的所有锚定标记,或
p:containsOwn(text)
查找直接包含文本的所有段落(即不在子标记中)或类似内容。如果要添加单词边界检查,还可以执行
:matches(regex)
:matchesOwn(regex)