前段时间用lotus写了个内容发布系统,使用notesRichTextItem保存内容。首页有个栏目块需要抽取文章的摘要信息(也就前多少个字符),手动输入的内容没问题,可以正常抽取;可是用户有时候在文档的前面插了个图片,或是从Word、网页上复制下来的信息贴进去保存之后,notesRichTextItem里面的内容就会带有<html>代码格式,抽取数据时数据、格式的问题就来了,晕啊。
在网上找到一个解决办法,就是在Lotusscript代理中调用正则将得到的内容先替换,然后再截取内容片断。
具体代码如下(用于window平台):
Class RegExp
' RegExp -- use VBScript RegExp object to provide regular expressions
' 2004-06-03 David Phillips, rfdinc.com First version.
Public matches As Variant
Public oRegExp As Variant
' VBScript RegExp properties
Public Pattern As String
Public IgnoreCase As Boolean ' default = False
Public Global As Boolean ' default = False
Sub new ()
Set oRegExp = CreateObject ("VBScript.RegExp")
End Sub
Public Function Match (source As String, pattern As String) As Boolean
' RegEx.Match -- scan source for pattern, set matches collection and return true if any
' (Can't call it Execute as that collides with LotusScript built-in function and statement.)
With oRegExp
.Pattern = pattern ' regular expression to match
.IgnoreCase = IgnoreCase
.Global = Global
Set matches = .Execute (source) ' do match
Match = (Not 0 = matches.count)
End With
End Function
Public Function Replaces (source As String, pattern As String, replacement As String) As String
' RegEx.Replaces -- scan source for pattern, if found substitute replacement, return result
' (Can't call it Replace as that collides with LotusScript built-in function.)
With oRegExp
.Pattern = pattern
.IgnoreCase = IgnoreCase
.Global = Global
Replaces = .Replace (source, replacement) ' do replace
End With
End Function
Public Function Test (source As String, pattern As String) As Boolean
' RegEx.Test -- scan source for pattern, return true if found
With oRegExp
.Pattern = pattern
.IgnoreCase = IgnoreCase
Test = .Test (source)
End With
End Function
End Class
-----------------------然后这样进行调用---------------------------------------------------
Dim re As New RegExp
re.IgnoreCase = True ' 设置是否区分字符大小写。
re.Global = True ' 设置全局可用性。
Gst = re.Replaces (Gst, "<[^>]+>", "") '删除所有html标签
分享到:
相关推荐
### LotusScript 代理获取 URL 的传值及解码 #### 一、背景介绍 在 Domino 服务器的应用开发中,我们经常需要处理通过 AJAX 技术从前端提交到后端的数据。其中,一个常见的问题是中文字符的乱码问题,尤其是在 POST...
### 如何在LotusScript中调用C程序 在探讨如何在LotusScript中调用C程序之前,我们首先简要了解一下LotusScript与C语言的基本特性及其应用场景。 #### LotusScript简介 LotusScript是一种基于Visual Basic语言环境...
### LotusScript 代理的基本用法 #### 1. FTSearch搜索 `FTSearch`是LotusScript中的一个强大工具,用于在Notes/Domino数据库中进行全文搜索。它基于数据库索引来进行高效的文档检索。 **代码示例**: ```vbscript ...
lotus domino lotusscript调用java
If hvec.Count <> 0 Then For h = 1 To hvec.Count Set hdoc = hvec.GetNthEntry(h).Document If Not hdoc Is Nothing Then For hc = 0 To hcount - 1 Dim tmp, tmpstr As String tmp = "txCon" & CStr(hc) ...
在ComputedField中,如果你希望在计算结果中包含HTML代码,如换行符`<br>`,你必须先禁用默认的转码行为。这是因为 Domino 默认会对输出内容进行转义,防止潜在的XSS(跨站脚本)攻击。在公式中,你可以通过设置`...
4. **特殊字符用法及含义**:"LotusScript中特殊字符用法及含义.pdf"将详细解析在LotusScript代码中常见的特殊字符,如转义字符、分隔符等,以及它们在字符串处理和正则表达式中的作用。 5. **LotusScript语言的...
### LotusScript(代理)导入Excel知识点详解 #### 一、背景与概述 在日常工作中,尤其是在企业级应用环境中,我们经常需要将Excel数据导入到Lotus Domino数据库中。这种需求通常涉及大量的数据处理和格式转换任务。...
lotus domino lotusscript 调用DLL
FtpKernel.lss是lotus script调用ftp的核心代码,此文件是从lotus script lib里引出的。 invokeFtp.lss是例子,此文件是我从一个按钮的lotus script引出了 你需要改动的,是 Call moFTP.Connect("ftp_address",...
《Domino LotusScript程序设计》是针对Domino开发人员的重要参考资料,它涵盖了LotusScript的基础概念、语法特性以及在实际应用中的高级技巧。LotusScript是IBM Lotus Domino平台上的主要编程语言,用于创建和定制...
Lotusscript java代理自动下载指定路径文件。可批量下载指定路径
1. **收集代码信息**:遍历LotusScript代码库,提取所有类、函数、方法和变量的信息。 2. **解析注释**:读取并解析代码中的文档注释,获取描述和示例。 3. **应用模板**:使用"lsdoc_120.ntf"或其他自定义模板,将...
- **属性与方法**:类可以包含属性和方法,属性用于存储状态信息,方法用于定义行为。 #### 三、LotusScript与Notes集成 **3.1 Notes对象模型** - **文档**:代表Notes数据库中的单个文档。 - **视图**:用于组织...
- 在表单中添加内联HTML和JavaScript代码,可以设置变量`NewDoc`,然后根据其值决定调用哪个代理并传递参数。例如,根据条件打开新的窗口并传值给代理。 - 使用`window.open()`函数打开新窗口,并在URL中附带参数...
LotusScript 代理导出Excel是Lotus Domino应用程序中一种常见的数据处理技术,它允许开发者通过编程方式将 Lotus Domino 数据库中的信息导出到Microsoft Excel文件中,以便于数据分析、报表制作或与其他系统进行数据...
### LotusScript解析Excel文件知识点详解 #### 一、概述 在LotusScript环境中解析Excel文件是一种常见的需求,尤其是在需要从上传的Excel文件中提取数据,并将这些数据转换为JSON格式以便于前端展示的情况下。本...
本文将详细介绍如何在代理程序中通过LotusScript和JavaScript两种脚本语言来获取和解析不同类型的域,特别关注`GetItemValue`方法的使用以及对富文本域(Rich-Text Field)和其他常见域类型(如文本域、单选框、复选...
然后,我们需要获取源数据库和目标数据库的信息: `sourceDbType = w.Prompt(PROMPT_OKCANCELLIST, "Select Database Location", "Select the location of the database you would like to copy from:", choices(0)...
标题中的“LOTUSSCRIPT批量修改代码工具”是指一种基于LOTUSSCRIPT语言开发的工具,主要用于批处理数据库中的代码修改工作。LOTUSSCRIPT是IBM Lotus Domino Designer中的编程语言,常用于构建和定制Lotus Notes/...