- 浏览: 678734 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (302)
- 知识库 (51)
- lucene (8)
- 数据结构 (7)
- 问题及解决方法 (97)
- Quartz (4)
- JavaScript (26)
- java 基础 (40)
- 休闲 (9)
- 数据库相关 (32)
- 面试题 (4)
- Hibernate (5)
- Struts (11)
- JBPM (2)
- Spring (3)
- ajax (7)
- Flex (0)
- 报表 (4)
- 打印 (2)
- prototype (3)
- Struts2 (3)
- JQUERY (4)
- Ruby (0)
- Linux (9)
- Android (3)
- Objective-c (2)
- Python (8)
- map (1)
- mybatis (3)
- php (2)
- ios (0)
- 问题及解决方法 struts2 spring ognl resion tomcat (0)
- 问题及解决方法 struts2 spring ognl resin tomcat (1)
- c++ (2)
- 问题及解决方法 upload.parseRequest(request) 为空 (1)
- Eclipse maven tomcat (1)
- 知识库 服务器配置 (1)
- sersync2 (1)
- Maven Jetty Plugin 配置指南(翻译) (1)
最新评论
-
jgroups:
...
遇到Causedby:java.lang.NoClassDefFoundError:javax/validation/ParameterNameProvider -
dmyccc:
第二种方法还是很佩服楼主的,但是多少感觉有点投机取巧了。但是确 ...
spring mvc整合kindeditor文件上传问题 -
du_bo:
在xx-servlet.xml中这样配置<bean id ...
spring mvc整合kindeditor文件上传问题 -
java梦之翼:
太感谢了, 问题得到解决, 感谢
异常org.mybatis.spring.transaction.SpringManagedTransactionFactory.newTransaction -
du_bo:
这是我的上传package com.sp.controller ...
spring mvc整合kindeditor文件上传问题
正则表达式(regex)是定义复杂查询的一个强有力的工具。
这里是一个简单的资料,它忽略了一些详细的信息。
正则表达式定义了一个字符串的规则。最简单的正则表达式不包含任何保留字。例如,
正则表达式hello只和字符串“hello”匹配。
一般的正则表达式使用了某些特殊的结构,所以它能匹配更多的字符串。例如,正则
表达式hello|word既能匹配字符串“hello”也能匹配字符串“word”。
举一个更复杂一点的例子,正则表达式B[an]*s可以匹配字符串“Bananas”、“Baaaaa
s”
、“Bs”以及其他任何以B开头以s结尾的字符串,中间可以包括任意个a和任意个n的组
合。
一个正则表达式中的可以使用以下保留字
^
所匹配的字符串以后面的字符串开头
mysql> select "fonfo" REGEXP "^fo$"; -> 0(表示不匹配)
mysql> select "fofo" REGEXP "^fo"; -> 1(表示匹配)
$
所匹配的字符串以前面的字符串结尾
mysql> select "fono" REGEXP "^fono$"; -> 1(表示匹配)
mysql> select "fono" REGEXP "^fo$"; -> 0(表示不匹配)
..
匹配任何字符(包括新行)
mysql> select "fofo" REGEXP "^f.*"; -> 1(表示匹配)
mysql> select "fonfo" REGEXP "^f.*"; -> 1(表示匹配)
a*
匹配任意多个a(包括空串)
mysql> select "Ban" REGEXP "^Ba*n"; -> 1(表示匹配)
mysql> select "Baaan" REGEXP "^Ba*n"; -> 1(表示匹配)
mysql> select "Bn" REGEXP "^Ba*n"; -> 1(表示匹配)
a+
匹配任意多个a(不包括空串)
mysql> select "Ban" REGEXP "^Ba+n"; -> 1(表示匹配)
mysql> select "Bn" REGEXP "^Ba+n"; -> 0(表示不匹配)
a?
匹配一个或零个a
mysql> select "Bn" REGEXP "^Ba?n"; -> 1(表示匹配)
mysql> select "Ban" REGEXP "^Ba?n"; -> 1(表示匹配)
mysql> select "Baan" REGEXP "^Ba?n"; -> 0(表示不匹配)
de|abc
匹配de或abc
mysql> select "pi" REGEXP "pi|apa"; -> 1(表示匹配)
mysql> select "axe" REGEXP "pi|apa"; -> 0(表示不匹配)
mysql> select "apa" REGEXP "pi|apa"; -> 1(表示匹配)
mysql> select "apa" REGEXP "^(pi|apa)$"; -> 1(表示匹配)
mysql> select "pi" REGEXP "^(pi|apa)$"; -> 1(表示匹配)
mysql> select "pix" REGEXP "^(pi|apa)$"; -> 0(表示不匹配)
(abc)*
匹配任意多个abc(包括空串)
mysql> select "pi" REGEXP "^(pi)*$"; -> 1(表示匹配)
mysql> select "pip" REGEXP "^(pi)*$"; -> 0(表示不匹配)
mysql> select "pipi" REGEXP "^(pi)*$"; -> 1(表示匹配)
{1}
{2,3}
这是一个更全面的方法,它可以实现前面好几种保留字的功能
a*
可以写成a{0,}
a+
可以写成a{1,}
a?
可以写成a{0,1}
在{}内只有一个整型参数i,表示字符只能出现i次;在{}内有一个整型参数i,
后面跟一个“,”,表示字符可以出现i次或i次以上;在{}内只有一个整型参数i,
后面跟一个“,”,再跟一个整型参数j,表示字符只能出现i次以上,j次以下
(包括i次和j次)。其中的整型参数必须大于等于0,小于等于 RE_DUP_MAX(默认是25
5)。
如果有两个参数,第二个必须大于等于第一个
[a-dX]
匹配“a”、“b”、“c”、“d”或“X”
[^a-dX]
匹配除“a”、“b”、“c”、“d”、“X”以外的任何字符。
“[”、“]”必须成对使用
mysql> select "aXbc" REGEXP "[a-dXYZ]"; -> 1(表示匹配)
mysql> select "aXbc" REGEXP "^[a-dXYZ]$"; -> 0(表示不匹配)
mysql> select "aXbc" REGEXP "^[a-dXYZ]+$"; -> 1(表示匹配)
mysql> select "aXbc" REGEXP "^[^a-dXYZ]+$"; -> 0(表示不匹配)
mysql> select "gheis" REGEXP "^[^a-dXYZ]+$"; -> 1(表示匹配)
mysql> select "gheisa" REGEXP "^[^a-dXYZ]+$"; -> 0(表示不匹配)
------------------------------------------------------------
[[.characters.]]
表示比较元素的顺序。在括号内的字符顺序是唯一的。但是括号中可以包含通配符,
所以他能匹配更多的字符。举例来说:正则表达式[[.ch.]]*c匹配chchcc的前五个字符
。
[=character_class=]
表示相等的类,可以代替类中其他相等的元素,包括它自己。例如,如果o和(+)是
一个相等的类的成员,那么[[=o=]]、[[=(+)=]]和[o(+)]是完全等价的。
[:character_class:]
在括号里面,在[:和:]中间是字符类的名字,可以代表属于这个类的所有字符。
字符类的名字有: alnum、digit、punct、alpha、graph、space、blank、lower、uppe
r、cntrl、print和xdigit
mysql> select "justalnums" REGEXP "[[:alnum:]]+"; -> 1(表示匹配)
mysql> select "!!" REGEXP "[[:alnum:]]+"; -> 0(表示不匹配)
[[:<:]]
[[:>:]]
分别匹配一个单词开头和结尾的空的字符串,这个单词开头和结尾都不是包含在alnum中
的字符也不能是下划线。
mysql> select "a word a" REGEXP "[[:<:]]word[[:>:]]"; -> 1(表示匹配)
mysql> select "a xword a" REGEXP "[[:<:]]word[[:>:]]"; -> 0(表示不匹配)
mysql> select "weeknights" REGEXP "^(wee|week)(knights|nights)$"; -> 1(表示
匹配)
《转自:http://tech.163.com/04/1118/11/15FH13VE0009rt.html》
发表评论
-
Mysql 卸载后,重新安装失败问题 (1067)
2012-07-21 14:01 3034今天安装Mysql(电脑重装了系统) 在官网上下 ... -
mysql 取得上月和上上月
2011-09-26 15:49 1242select DATE_SUB(sysdate(),INTER ... -
Mysql 错误码1418 .
2011-07-11 10:35 1999最近在centos下进行数据库复制时,发现了这个错误,不能 ... -
Mysql 编码查看
2011-06-15 14:09 904show VARIABLES like 'char%' ... -
sql语句执行顺序
2011-05-26 12:04 1271一、sql语句的执行步骤:1)语法分析,分析语句的语法是 ... -
Mysql 1267错误 及其解决方法
2011-04-01 09:48 3116如果建表时使用的字符集和mysql默认的字符集不一样,在查询操 ... -
Statement关于execute()方法返回值的问题
2011-01-04 18:01 2032Executes the given SQL statemen ... -
ResultSet 得到行数
2010-10-27 14:23 1128《本文转自:http://youchenglin.iteye. ... -
Mysql 日期函数
2010-10-19 18:47 1303mysql的日期和时间函数 ... -
MySQL 1303错误的解决方法(navicat)
2010-10-18 10:46 27591303-Can 't create a PROCEDURE ... -
SQL截取字符串
2010-10-12 18:32 2504SUBSTRING返回字符 ... -
字符串连接函数CONCAT() 计算字符长度char_length()
2010-08-12 18:04 2470字符串连接函数CONCAT() SELECT TPAS ... -
查找数据库中某个字段中是否还有空格 制表符 新行
2010-08-03 14:29 2568查找数据库中某个字段中是否还有空格 制表符 新行 很显 ... -
Mysql 1093 号错误 及解决
2010-07-01 18:06 1573Mysql 1093 号错误 及解决 转载自 http:// ... -
全国各个省市数据库
2010-05-21 15:12 1537全国各个省市 数据库 SET FOREIGN_KEY_ ... -
SQL中on条件与where条件的区别 (having)
2010-04-23 10:16 2084SQL中on条件与where条件的区别 数据库 ... -
查找数据库中重复数据T-SQL
2010-04-14 16:27 2370表stuinfo,有三个字段recno(自增),stuid,s ... -
INSERT INTO SELECT语句 vs SELECT INTO FROM语句
2010-04-14 15:02 1813Insert是T-sql中常用语句,Inser ... -
mysql 5.0存储过程学习总结
2010-04-14 11:52 865一.创建存储过程 1.基本语法: create pr ... -
MySQL密码丢失的找回方法(win/*inx)
2010-04-14 11:50 1121破解本地密码: Windows: 1.用系统管理员登陆系 ...
相关推荐
本文实例讲述了mysql正则表达式(regexp和rlike)的搜索功能。分享给大家供大家参考,具体如下: 我们知道正则表达式是描述搜索模式的特殊字符串。 它是一个强大的工具,为我们提供一种简洁灵活的方法来识别基于模式...
MySQL中的正则表达式(Regex)是一种强大的查询工具,用于定义字符串匹配的模式。这些模式可以用来进行复杂的文本搜索和替换操作。在MySQL中,正则表达式功能主要通过`REGEXP`运算符来实现。 1. **基础概念**: - ...
例如,用户可能只需要提供一个简单的描述,如“匹配所有邮箱地址”,工具就能生成相应的正则表达式。 RegexBuddy是这类工具的代表之一,它提供了丰富的功能来辅助正则表达式的创建和测试。RegexBuddy.chm是一个帮助...
### MySQL正则表达式知识点详解 #### 一、MySQL中正则表达式的使用场景与功能 MySQL中的正则表达式是一种强大的工具,主要用于文本搜索和数据处理任务中。通过使用正则表达式,用户可以执行复杂的字符串匹配操作,...
- 正则表达式是一种模式匹配语言,通过特定的字符序列来描述字符串的模式。 - 常见的元字符如`^`(开始)、`$`(结束)、`.`(任意单个字符)、`*`(重复零次或多次)、`+`(重复一次或多次)和`?`(重复零次或一...
正则表达式的强大之处在于它可以用来描述一类字符串的特征,而不是单一的字符串。 #### 常见的正则表达式基础库 - **PCRE (Perl Compatible Regular Expressions)**:一个与Perl兼容的正则表达式库,被广泛应用...
1. MySQL正则表达式基础 MySQL中的正则表达式通过`REGEXP`或`RLIKE`操作符来实现。它们用于在`WHERE`子句中搜索列值中的文本模式。基本的正则表达式语法如下: - `^` 表示匹配字符串的开始。 - `$` 表示匹配字符串...
【描述】:描述中提到的“基于PHP的正则表达式在线测试php版源码.zip”表明这是一个使用PHP编程语言编写的项目,它提供了用户友好的界面来执行正则表达式测试。通过这个平台,开发者可以方便地验证他们的正则表达式...
正则表达式是一种用于字符串搜索和操作的强大工具,它使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。正则表达式广泛应用于数据验证、字符串提取和替换等场景中。在Delphi中,正则表达式的主要支持是...
总的来说,MySQL的字符串模式匹配和扩展正则表达式模式匹配是数据库查询中非常实用的功能,能够帮助用户以各种方式过滤和检索数据,满足各种复杂的需求。通过熟练掌握这些技巧,可以极大地提升SQL查询的灵活性和实用...
通过阅读和实践这些教程,用户可以深化对SQL查询的理解,掌握XML的数据描述能力,并精通正则表达式的文本处理技巧。对于希望提升自己在数据库管理、Web开发或数据处理方面技能的人来说,这是一个不可多得的学习资料...
正则表达式(Regular Expression)是一种特殊的字符序列,可以用来描述一种字符串模式。它由各种字符和特殊符号组成,例如`.`表示任意单个字符,`*`表示前面的字符出现零次或多次,`+`表示前面的字符至少出现一次,`...
数据库中使用正则表达式是一种...在使用过程中,除了上述的知识点外,还应熟悉相关数据库系统的正则表达式方言,因为不同的数据库系统(如MySQL、PostgreSQL、Oracle等)对正则表达式的支持和实现细节可能有所差异。
在标题和描述中提到的问题是关于使用正则表达式在MySQL中替换字符串,特别是涉及到HTML标签的替换。例如,我们可能有一个名为`name`的字段,其中包含`<contact>efg</contact>`这样的字符串,我们想将其替换为`...
2.1 概述:正则表达式由普通字符(例如字母和数字)和特殊字符(称为“元字符”)组成,用于描述字符串模式。 2.2 元字符:如`.`, `*`, `+`, `?`, `{}`, `[]`, `^`, `$`, `\`, `|`, `(`, `)`等,它们具有特殊含义...
正则表达式是一种强大的文本匹配工具,它通过一系列特殊字符的组合来构建表达式,用以描述和匹配特定的字符串模式。正则表达式的强大之处在于它几乎可以匹配任何形式的文本,从简单的字母数字组合到复杂的字符串结构...
标题中的“全程正则表达式匹配的网络采集程序源代码”揭示了这是一个使用正则表达式进行网络数据抓取的应用程序。在IT领域,网络采集(也称为网络爬虫或网络蜘蛛)是一种自动化技术,用于从万维网中提取大量信息。这...
《CSS、HTML、JavaScript、正则表达式、MySQL和jQuery参考手册》是一份全面的IT技术资源,包含多个领域的核心知识。以下是对这些关键领域的详细解释: **CSS(层叠样式表)**: CSS是用于描述HTML或XML(包括如SVG...