- 浏览: 14532 次
最新评论
正则表达式的基础:
表达式 说明
\t 制表符.
\n 新行.
. 匹配任意字符.
| 匹配表达式左边和右边的字符. 例如, "ab|bc" 匹配 "ab" 或者 "bc".
[] 匹配列表之中的任何单个字符. 例如, "[ab]" 匹配 "a" 或者 "b". "[0-9]" 匹配任意数字.
[^] 匹配列表之外的任何单个字符. 例如, "[^ab]" 匹配 "a" 和 "b" 以外的字符. "[^0-9]" 匹配任意非数字字符.
* 其左边的字符被匹配任意次(0次,或者多次). 例如 "be*" 匹配 "b", "be" 或者 "bee".
+ 其左边的字符被匹配至少一次(1次,或者多次). 例如 "be+" 匹配 "be" 或者 "bee" 但是不匹配 "b".
? 其左边的字符被匹配0次或者1次. 例如 "be?" 匹配 "b" 或者 "be" 但是不匹配 "bee".
^ 其右边的表达式被匹配在一行的开始. 例如 "^A" 仅仅匹配以 "A" 开头的行.
$Content$nbsp;其左边的表达式被匹配在一行的结尾. 例如 "e$" 仅仅匹配以 "e" 结尾的行.
() 影响表达式匹配的顺序,并且用作表达式的分组标记.
\ 转义字符. 如果你要使用 "\" 本身, 则应该使用 "\\".
\w 表示[A-Z0-9]的字符
\W表示[^A-Z0-9]的字符
\s表示[\t\n\r\f]一般就是一个空格
详见:http://hi.baidu.com/ismayday/blog/item/7f5b8694274 1d11dd21b708f.html
下面为一个手机适配的实例:
private static String regex(String useragent) {
String ret;
/**
* ([a-z|A-Z|\\-|_|\\/]*)表示字符串为大写或小写或-或_或/组成的字符串
* \d [0-9]
* \D 非[0-9]
* \s 空白
* 根据UA返回结果字符串为dopod|Nokia|SonyEricsson($2)字母再带大(小)写字母$3,一个或多个数字$4及一个字符$5组成的字符串
*/
ret = regex(
useragent,
"(.*)(dopod|Nokia|SonyEricsson)([a-z|A-Z|\\-|_|\\/ ]*)(\\d+)(\\w{0,1})(\\D+)(.*)",
"$2$3$4$5");
if (ret != null) {
return ret;
}
/**
* 根据UA返回结果字符串为Philips|SAMSUNG|SEC-|MOT|Motorola-|ASUS|Lenovo|LEN OVO|Haier-|GIONEE($2)字母再带大(小)写字母$3,一个或多个数字$4组成的字符串
*/
ret = regex(
useragent,
"(.*)(Philips|SAMSUNG|SEC-|MOT|Motorola-|ASUS|Leno vo|LENOVO|Haier-|GIONEE)([a-z|A-Z|\\-|_|\\/]*)(\\d+ )(\\D+)(.*)",
"$2$3$4");
if (ret != null) {
return ret;
}
ret = regex(
useragent,
"(.*)(Panasonic|BlackBerry|BIRD|CHANGHONG|Amoi|HED Y|CoolPad|YuLong-Coolpad|ZTE-|SKYWORTH)([a-z|A-Z|\\ -|_|\\/]*)(\\d+)(\\D+)(.*)",
"$2$3$4");
if (ret != null) {
return ret;
}
ret = regex(
useragent,
"(.*)(TIANYU|KONKA|PANTECH|CECT|TCL)([a-z|A-Z|\\-| _|\\/]*)(\\d+)(\\D+)(.*)",
"$2$3$4");
if (ret != null) {
return ret;
}
return null;
}
public static String phone(String useragent) {
if (useragent == null || useragent.length() 1) {
return ss[0] + ss[1];
}
return ss[0];
}
发表评论
-
转贴 有关js 函数验证和字符串查找替换的方法
2012-07-06 09:52 666/* ************************** ... -
正则表达式JS变量
2012-07-06 09:45 610str="苹果有大苹果小苹果之分"; ... -
HL7 Message examples
2012-07-06 09:30 1095i am now in university(HIT@We ... -
mantis附件图片预览
2012-07-05 20:45 1195mantis在bug详情查看页面里,可以查看bug关联的附 ... -
UML建模图组件库,软件设计,UML绘制 ,打印,自动代码产生,软件,VC++,VB,控件源程序
2012-07-03 13:43 886UML建模图组件库,软件设计,UML绘制 ,打印,自动 ... -
在Flex Mobile中构建“本地”菜单
2012-07-02 12:15 736Adobe Flash Builder 4 简体中文正式版 ... -
探究 Flex 组件的生命周期
2012-07-02 12:15 613简介: 最为新一 ... -
在Eclipse下使用Ant编译Flex程序
2012-07-02 12:15 583我的机器内存1G,如果使用Eclipse Flex插件编译 ... -
flex与mysql交互
2012-07-02 12:14 670这个小例子通过remoteobject的通讯方法。实现fl ... -
实现FLEX 通过AMF跟PHP通信
2012-07-02 12:14 550AMF flex一种远调用 ... -
Flex引擎
2012-07-01 09:48 805游戏引擎 1、FFilmation 是一个2.5D游 ... -
Ant Flex project 应用
2012-07-01 09:48 703写一个Ant脚本,xml大 ... -
Flex 拖拽范例
2012-07-01 09:48 710Flex由于在其Framwork里加入了DragDrop管 ... -
myeclipse6.5+flex 3 + tomcat6.0 + ds-console.war环境搭建
2012-07-01 09:48 723安装环境:myeclipse6 ... -
探究 Flex 组件的生命周期
2012-07-01 09:48 499简介: 最为新一 ... -
[转载]【笔记本电脑报价】笔记本电脑
2012-06-30 16:11 721[转载]【笔记本电脑报 ... -
[转载]Android原生(Native)C开发之四:SDL移植笔记
2012-06-30 16:11 708[转载]Android原生(Native)C开发之四:SDL移 ... -
[转载]人力资源管理师(二级)复习笔记-第三章 培训与开发
2012-06-30 16:11 726[转载]人力资源管理师( ... -
[转载]《0岁潜能开发 开发无限能力的ESP教育法》笔记
2012-06-30 16:11 676[转载]《0岁潜能开发 开发无限能力的ESP教育法》笔记 ...
相关推荐
Java正则表达式学习笔记,比较基础,适合初学者
快速学习java 正则表达式并且掌握,实现轻松的学习,不需要发费很多的时间
一篇学习Java正则表达式的文章。
在学习完该教程后,应该对正则表达式有了初步的了解,并能熟练地运用 java.util.regex 包中的关于正则表达式的类库,为今后学习更高级的正则表达式技术奠定良好的基础。 教程中所有的源代码都在 src 目录下,可以...
JAVA正则表达式实例教程.pdf 1、正则表达式的知识要点 1、正则表达式是什么? 正则表达式是一种可以用于模式匹配和替换的强有力的工具。 2、正则表达式的优点? 更少的代码,更高的效率。 3、正则表达式如何使用? ...
java的正则表达式的详细说明,里面有详细的说明和例子,是要学习java正则表达式的好资料。
还有一个大概在上传中错误了,导致没有了,再重新上传一次。 本文全文译自 Java Tutorial 的 ...适合 Java正则表达式的初学者学习。原文链接:http://java.sun.com/docs/books/tutorial/essential/regex/index.html
java正则表达式入门介绍,java正则表达式学习帮助文档。。。
因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段。 大家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式...
正则表达式学习视频,包括正则表达式的简单语法,高级语法,和在JS。java语言中的应用
对于如何使用正则表达式来解决性能不佳、误报、漏报等常见的错误以及完成一些常见的任务,《正则表达式经典实例》给出了涉及基于C#、Java、JavaScript、Perl、PHP、Python、Ruby和VB.NET等编程语言的解决方案。...
正则表达式是程序员必备的强大工具,得到了各种Unix实用程序,以及Perl、Java、JavaScript、C#等编程语言的支持。读完本书,你会对正则表达式的常用语法了然于胸。掌握正则表达式是提升编程效率、节约时间的一大法.....
用来学习正则表达式的小工具(JAVA版的) 可以及时的测试自己写的正则表达式 Welcome to id0096.cn
本教程旨在帮助你驾驭Java正则表达式,同时也帮助我复习正则表达式。 什么是正则表达式? 正则表达式定义了字符串的模式。正则表达式可以用来搜索、编辑或处理文本。正则表达式并不仅限于某一种语言,但是在每种语言...
包含所有正则表达式的内容,还有个人的总结与心得!!!
该文件总结了一部分正则表达式,在学习判断用户名和密码的过程中会有所帮助,仅供参考,如果有总结不对的地方,请联系作者修改
Java正则表达式在字符串处理和模式匹配中扮演着重要角色。为了帮助准备面试的你更好...通过学习这些问题和解析,你将掌握复杂匹配规则的设计思路和高效字符串处理的技巧,为你在Java正则表达式面试中脱颖而出提供帮助。