`

常用的正则表达式(转)

    博客分类:
  • JAVA
阅读更多

“^d+$”  //非负整数(正整数 + 0)

“^[0-9]*[1-9][0-9]*$”  //正整数

“^((-d+)|(0+))$”  //非正整数(负整数 + 0)

“^-[0-9]*[1-9][0-9]*$”  //负整数

“^-?d+$”    //整数

“^d+(.d+)?$”  //非负浮点数(正浮点数 + 0)

“^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$”  //正浮点数

“^((-d+(.d+)?)|(0+(.0+)?))$”  //非正浮点数(负浮点数 + 0)

“^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$”  //负浮点数

“^(-?d+)(.d+)?$”  //浮点数

“^[A-Za-z]+$”  //由26个英文字母组成的字符串

“^[A-Z]+$”  //由26个英文字母的大写组成的字符串

“^[a-z]+$”  //由26个英文字母的小写组成的字符串

“^[A-Za-z0-9]+$”  //由数字和26个英文字母组成的字符串

“^w+$”  //由数字、26个英文字母或者下划线组成的字符串

“^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$”    //email地址

“^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$”  //url

^([-+]?[0-9]+.?[0-9]+)$                 //小数

在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下:
只能输入数字:“^[0-9]*$”
只能输入n位的数字:“^d{n}$”
只能输入至少n位数字:“^d{n,}$”
只能输入m-n位的数字:“^d{m,n}$”
只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”
只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$”
只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$”
只能输入非零的正整数:“^+?[1-9][0-9]*$”
只能输入非零的负整数:“^-[1-9][0-9]*$”
只能输入长度为3的字符:“^.{3}$”
只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”
只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$”
只能输入由26个小写英文字母组成的字符串:“^[a-z]+$”
只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$”
只能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$”
验证用户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间,
验证用户密码(大于6个字符小于20、必须包含一个特殊字符  、至少包含一个数字:   (?=^.{6,20}$)(?=(.*d){1,})(?=(.*W){1,}).*

只能包含字符、数字和下划线。
验证是否含有^%&’,;=?$”等字符:“[^%&',;=?$x22]+”
只能输入汉字:“^[u4e00-u9fa5],{0,}$”   ||||  ^[u4E00-u9FA5]*$
验证Email地址:“^[-_A-Za-z0-9]+@([_A-Za-z0-9]+.)+[A-Za-z0-9]{2,3}$”
验证InternetURL:“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$”
验证电话号码:“^((d{3,4})|d{3,4}-)?d{7,8}$”

正确格式为:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”,

“XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。
验证身份证号(15位或18位数字):“^d{15}|d{}18$”
验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”

正确格式为:“01”“09”和“1”“31”。

 

Java的正则表达式是由java.util.regexPatternMatcher类实现的Pattern对象表示经编译的正则表达式。静态的compile( )方法负责将表示正则表达式的字符串编译成Pattern对象。正如上述例程所示的,只要给Patternmatcher( )方法送一个字符串就能获取一个Matcher对象。此外,Pattern还有一个能快速判断能否在input里面找到regex

staticboolean matches(?regex, ?input)

以及能返回String数组的split( )方法,它能用regex把字符串分割开来。

只要给Pattern.matcher( )方法传一个字符串就能获得Matcher对象了。接下来就能用Matcher的方法来查询匹配的结果了。

boolean matches()
boolean lookingAt()
boolean find()
boolean find(int start)

matches( )的前提是Pattern匹配整个字符串,而lookingAt( )的意思是Pattern匹配字符串的开头。

find( )

Matcher.find( )的功能是发现CharSequence里的,与pattern相匹配的多个字符序列。例如:

//: c12:FindDemo.java
import java.util.regex.*;
import com.bruceeckel.simpletest.*;
import java.util.*;
publicclass FindDemo {
privatestatic Test monitor = new Test();
publicstaticvoid main(String[] args) {
Matcher m = Pattern.compile("//w+")
.matcher("Evening is full of the linnet's wings");
while(m.find())
System.out.println(m.group());
int i = 0;
while(m.find(i)) {
System.out.print(m.group() + " ");
i++;
}
monitor.expect(new String[] {
"Evening",
"is",
"full",
"of",
"the",
"linnet",
"s",
"wings",
"Evening vening ening ning ing ng g is is s full " +
"full ull ll l of of f the the he e linnet linnet " +
"innet nnet net et t s s wings wings ings ngs gs s "
});
}
} ///:~

"//w+"的意思是"一个或多个单词字符",因此它会将字符串直接分解成单词。find( )像一个迭代器,从头到尾扫描一遍字符串。第二个find( )是带int参数的,正如你所看到的,它会告诉方法从哪里开始找——即从参数位置开始查找。

相关连接:

http://blog.csdn.net/dongwujing/article/details/7668969

http://www.cnblogs.com/kkcheng/archive/2010/02/03/1662821.html

http://blog.csdn.net/allwefantasy/article/details/3136570

揭开正则表达式的神秘面纱
http://www.regexlab.com/zh/regref.htm

分享到:
评论

相关推荐

    正则表达式转NFA实现

    总的来说,正则表达式转NFA的实现是理论与实践的结合,它涉及编译原理、形式语言和自动机理论等领域的知识,对于理解和处理字符串模式匹配问题具有深远的意义。在实际应用中,这一转换过程常被用于文本分析、搜索...

    常用正则表达式大全.txt

    根据提供的文件信息,我们可以整理出一系列与正则表达式相关的知识点。这些知识点涵盖了从基本的数字验证到复杂的字符串匹配等多个方面。下面是详细的知识点总结: ### 基本概念 正则表达式是一种用于文本模式匹配...

    java常用正则表达式(转)

    这篇博客“java常用正则表达式(转)”可能详细介绍了Java如何使用正则表达式进行各种操作。虽然没有具体的描述内容,但我们可以从标题和标签中推测,这篇博客可能涵盖了以下几个方面: 1. **正则表达式基础**: -...

    易语言正则表达式匹配中文

    在易语言中,正则表达式是进行文本处理、数据提取和搜索的关键工具,尤其在处理中文字符时显得尤为重要。本文将深入探讨易语言中的正则表达式匹配中文的原理、方法以及应用。 正则表达式(Regular Expression)是一...

    《学习正则表达式》高清扫描版 PDF

    你是程序员?正物色一本学习正则表达式的入门图书?恭喜,《学习正则表达式》非常适合你!...读完本书,你会对正则表达式的常用语法了然于胸。掌握正则表达式是提升编程效率、节约时间的一大法......展开全部内容介绍

    C#字符串和正则表达式参考手册

    特别是在处理文本操作时,字符串和正则表达式是两个至关重要的概念。本文将深入探讨C#中的字符串操作和正则表达式使用,帮助你更好地理解和运用这些工具。 一、C#字符串 1. 字符串基础:在C#中,字符串是不可变...

    Oracle正则表达式详解(用法+实例)

    #### 三、常用的POSIX正则表达式元字符 - `^`: 匹配字符串的开始位置。 - `$`: 匹配字符串的结尾位置。 - `.`, `?`, `+`, `*`, `|`, `()`, `[]`, `{}`, `\`: 这些是基本的元字符,用于定义匹配规则。 - 特殊字符簇 ...

    常用Javascript正则表达式汇总

    JavaScript中的正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索替换。以下是一些常见的JavaScript正则表达式及其应用: 1. **匹配中文字符**:`[\u4e00-\u9fa5]` 这个正则表达式用于匹配...

    Go-Go的常用正则表达式集合

    这个名为“Go-Go的常用正则表达式集合”的资源可能是一个包含多种常见正则表达式模式的代码库或文档,用于帮助开发者快速有效地处理字符串。 首先,我们来看看`regexp`包的基本用法。要使用正则表达式,你需要先...

    正则表达式实现将MM/DD/YYYY格式的日期转换为YYYY-MM-DD格式

    本文所涉及的知识点集中在正则表达式领域的应用,具体而言,是使用正则表达式来实现日期格式的转换。具体从MM/DD/YYYY格式转换为YYYY-MM-DD格式。在这过程中,我们不仅会探讨正则表达式的应用方法,同时还会涉及日期...

    你所需要的web方面的常用正则表达式

    本文将围绕给定的文件信息,详细介绍几种常用的正则表达式及其应用场景。 #### 二、正则表达式限制输入中文 1. **表达式**: `^[\u4e00-\u9fa5]{0,}$` - 解析: 这个正则表达式的含义是匹配任何长度(包括空字符串...

    常用 正则表达式 集合

    根据给定文件的信息,我们可以总结出一系列与C#正则表达式相关的知识点: ### C#正则表达式小结 #### 1. 数字匹配 - **任意数字**:`"^[0-9]*$"` 匹配任意长度的数字串。 - **恰好n位数字**:`"^\d{n}$"` 匹配...

    清华大学精品Python学习PPT课件-第5章 Python正则表达式.pptx

    【字符串与正则表达式】 在Python编程中,字符串是数据类型之一,广泛应用于文本处理。第五章“字符串与正则表达式”深入探讨了这一关键主题,旨在帮助初学者和有经验的开发者更好地理解和使用字符串及正则表达式。...

    常用的正则表达式.txt

    #### 常用正则表达式知识点详解 1. **中文字符匹配**: - 表达式:`[\u4e00-\u9fa5]` - 描述:该正则表达式用于匹配中文字符。其中`\u4e00`至`\u9fa5`是Unicode编码范围,覆盖了大多数常用汉字。 2. **去除重复...

    常用正则表达式及用法整理

    ### 常用正则表达式及用法整理 #### 整数或者小数:`^[0-9]+\.{0,1}[0-9]{0,2}$` 此正则表达式用于匹配一个整数或小数,其中小数部分最多包含两位。具体解释如下: - `^` 表示字符串的开始。 - `[0-9]+` 匹配一个...

    正则表达式大全 正则表达式 模式匹配 Javascript

    #### 二、常用正则表达式实例 1. **匹配中文字符**: - 表达式:`[\u4e00-\u9fa5]` - 应用场景:在表单验证或文本处理中确保输入的字符为中文。 2. **去除重复字符**: - 示例代码: ```javascript var s = ...

    正则表达式在程序开发中的应用

    #### 二、正则表达式的常用语法 1. **匹配数字:** - `^[0-9]*$`:匹配任何长度的数字串。 - `^\d{n}$`:匹配恰好包含 n 个数字的字符串。 - `^\d{n,}$`:匹配至少包含 n 个数字的字符串。 - `^\d{m,n}$`:匹配...

    php常用正则表达式

    ### PHP常用正则表达式知识点解析 #### 一、概述 正则表达式是一种强大的文本处理工具,在PHP中被广泛应用于字符串匹配、搜索替换、数据验证等场景。本篇文章将根据给定文件中的标题“php常用正则表达式”及描述...

    一些常用正则表达式常用

    ### 正则表达式知识点详解 #### 一、基本概念与元字符介绍 **正则表达式**是一种用于模式匹配的强大工具,在文本处理、搜索替换等场景中有着广泛的应用。正则表达式的元字符包括但不限于以下几种: 1. **`.`...

Global site tag (gtag.js) - Google Analytics