社区
C#
帖子详情
如何在存储过程或函数中实现正则表达式的功能
rainbow_57
2005-11-25 02:14:51
小弟有点问题想请教一下,看看各位大大有没有办法帮忙解决。
小弟想写一个存储过程或函数实现正则表达式的功能,在网上找了一下只有通过创建VBScript.RegExp来实现的,而且是只能知道有没有匹配的字符串(即能不能匹配成功)。小弟想更进一步,把匹配到的字符串插入一张临时表中,无奈VBScript根本没有学过,不知道有没有创建C#中的System.Text.RegularExpression的对象的?
...全文
255
5
打赏
收藏
如何在存储过程或函数中实现正则表达式的功能
小弟有点问题想请教一下,看看各位大大有没有办法帮忙解决。 小弟想写一个存储过程或函数实现正则表达式的功能,在网上找了一下只有通过创建VBScript.RegExp来实现的,而且是只能知道有没有匹配的字符串(即能不能匹配成功)。小弟想更进一步,把匹配到的字符串插入一张临时表中,无奈VBScript根本没有学过,不知道有没有创建C#中的System.Text.RegularExpression的对象的?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rainbow_57
2005-11-25
打赏
举报
回复
唉,确实是啊,我查了一下资料,好像有个函数是通过创建VBScript对象来实现简单的查找功能的。但这种功能几乎没什么用,我想写能够匹配出子查询的。
我现在能写出的存储过程是匹配到整个符合的字符串的,但是,这个字符串里面的几组子字符串实在不知道怎么取出来了。好像VBScript没SubMatches之类的对象,或者我不会用吧。哪位老兄会的,来这里Show一下啊。
搬运工木木
2005-11-25
打赏
举报
回复
那等于是要写个正则表达式解释器了
来客心动
2005-11-25
打赏
举报
回复
存储过程的这些方面不强,根据自己的需要可以用 Sql 中的字符串函数,通配符,来实现一些简单的匹配,可以查看帮助文档来找到那些函数
rainbow_57
2005-11-25
打赏
举报
回复
不好意思啊,我想楼上的误会我的意思了。在C#里用正则表达式的功能写一些过程函数我也会。
我是想将这个功能搬到存储过程或者函数里面。
jxufewbt
2005-11-25
打赏
举报
回复
示例代码:
///提取HTML代码中文字的C#函数
/// <summary>
/// 去除HTML标记
/// </summary>
/// <param name="strHtml">包括HTML的源码 </param>
/// <returns>已经去除后的文字</returns>
using System;
using System.Text.RegularExpressions;
public class StripHTMLTest{
public static void Main(){
string s=StripHTML("<HTML><HEAD><TITLE>中国石龙信息平台</TITLE></HEAD><BODY>faddfs龙信息平台</BODY></HTML>");
Console.WriteLine(s);
}
public static string StripHTML(string strHtml){
string [] aryReg ={
@"<script[^>]*?>.*?</script>",
@"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""'])(\\[""'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>",
@"([\r\n])[\s]+",
@"&(quot|#34);",
@"&(amp|#38);",
@"&(lt|#60);",
@"&(gt|#62);",
@"&(nbsp|#160);",
@"&(iexcl|#161);",
@"&(cent|#162);",
@"&(pound|#163);",
@"&(copy|#169);",
@"&#(\d+);",
@"-->",
@"<!--.*\n"
};
string [] aryRep = {
"",
"",
"",
"\"",
"&",
"<",
">",
" ",
"\xa1",//chr(161),
"\xa2",//chr(162),
"\xa3",//chr(163),
"\xa9",//chr(169),
"",
"\r\n",
""
};
string newReg =aryReg[0];
string strOutput=strHtml;
for(int i = 0;i<aryReg.Length;i++){
Regex regex = new Regex(aryReg[i],RegexOptions.IgnoreCase);
strOutput = regex.Replace(strOutput,aryRep[i]);
}
strOutput.Replace("<","");
strOutput.Replace(">","");
strOutput.Replace("\r\n","");
return strOutput;
}
}
在sqlserver2008r2版本
中
实现
正则表达式
在SQL Server 2008 R2
中
,虽然标准版并不直接支持
正则表达式
,但可以通过一些扩展方法和第三方工具来
实现
正则表达式
的
功能
。这篇文章将详细讲解如何在SQL Server 2008 R2
中
实现
正则表达式
处理。 首先,SQL Server ...
VC、VC++,MFC
正则表达式
类库
"VC、VC++,MFC
正则表达式
类库"指的是在MFC
中
实现
或集成的
正则表达式
处理模块。这个库通常包含一系列的类和
函数
,允许程序员编写符合特定模式的字符串匹配、替换和分割等操作。在标准C++库
中
,虽然没有内置的正则...
C语言
实现
正则表达式
检测
在C语言
中
,由于标准库并不直接支持
正则表达式
,因此开发者通常需要自定义
函数
或引用第三方库来
实现
这一
功能
。这里我们将深入探讨如何在C语言
中
实现
正则表达式
的检测,基于提供的"ValidateLib.c"和"Validate.h"文件...
C语言
正则表达式
库
在C语言
中
,使用
正则表达式
库可以
实现
复杂的文本搜索、替换和分析操作,而无需编写复杂的字符串处理代码。PCRE库提供了丰富的API接口,包括编译
正则表达式
、执行匹配、获取匹配结果等。 PCRE库的特性包括: 1. **...
C
正则表达式
库
在C语言环境
中
,GUN(GNU)提供了一个官方的
正则表达式
库,这使得C程序员可以方便地在他们的应用程序
中
利用
正则表达式
的强大
功能
。本篇文章将详细探讨GUN C的
正则表达式
库,包括其核心组件`regex.c`和`regex.h`,...
C#
111,097
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章