Java Script 正则表达式的使用示例
一、语法
1.1 在JS中的使用代码
var myregex = new RegExp("^[-]?[0-9][0-9]{0,2}\\.[0-9]{5,15}\\,\s*[-]?[0-9][0-9]{0,2}\\.[0-9]{5,15}$");var flagmath = myregex.test(cordinateString);
1.2专用字符包括:+,*,?
+:规定其前导字符必须在目标对象中连续出现一次或多次。
*:规定其前导字符必须在目标对象中出现零次或连续多次。
?:规定其前导对象必须在目标对象中连续出现零次或一次。
{n}匹配确定的 n 次。
{n,}至少匹配 n 次。
{n,m}n <= m,最少匹配 n 次且最多匹配 m 次。
\s:用于匹配单个空格符,包括tab键和换行符;
\S:用于匹配除单个空格符之外的所有字符;
\d:用于匹配从0到9的数字;
\w:用于匹配字母,数字或下划线字符;
\W:用于匹配所有与\w不匹配的字符;
. :用于匹配除换行符之外的所有字符。
1.3 较为常用的定位符包括:^, $, \b,\B
^:定位符规定匹配模式必须出现在目标字符串的开头
$:定位符规定匹配模式必须出现在目标对象的结尾
\b:定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一
\B:定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内,即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾。
二、典型应用
匹配负整数的正则表达式:
-[0-9]*[1-9][0-9]*
匹配整数的正则表达式:
-?\\d+
匹配非负浮点数(正浮点数 + 0)的正则表达式:
\\d+(\\.\\d+)?
匹配正浮点数的正则表达式:
(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))
匹配非正浮点数(负浮点数 + 0)的正则表达式:
((-\\d+(\\.\\d+)?)|(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+)?
匹配26个英文字母组成字符串的正则表达式:
[A-Za-z]+
匹配26个英文字母的大写组成字符串的正则表达式:
[A-Z]+
匹配26个26个英文字母的小写组成字符串的正则表达式:
[a-z]+
匹配中文字符的正则表达式:
[\u4e00-\u9fa5]
匹配中文字符数限制的正则表达式:
[\u4e00-\u9fa5]{2,4}
匹配下划线和数字及字母的正则表达式:
[\w+]{6,12}
匹配中文字符及字母的正则表达式:
[^\W\x00-\xff]{6,16}
匹配双字节字符(包括汉字在内)表达式:
[^\x00-\xff]
匹配空行的正则表达式:
\n[\s| ]*\r
匹配HTML标记的正则表达式:
/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:
(^\s*)|(\s*$)(像vbscript那样的trim函数)
匹配Email地址的正则表达式:
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:
http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
匹配手机号码且以数字开头的正则表达式:
((\(\d{3}\))|(\d{3}\-))?13\d{9}|15[89]\d{8} 或 [+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[]){1,12})+
匹配普通电话、传真号码,可以“+”开头,除数字外,可含有“-”的正则表达式:
\d{3,4}-?\d{7,8}-?\d{0,1} 或 [+]{0,1}(\d){1,3}[]?([-]?((\d)|[]){1,12})+
匹配特定形式数字及标识(如60~80)的正则表达式:
[1-9][0-9]?[0-9]?(~)[1-9][0-9]?[0-9]?
匹配百分数的正则表达式:
(100|([1-9]?[0-9]?))%
使用座机号码(JS)范例:
(/^\d{3,4}[-]d{7,8}[-]\d{0,1}$/.test(value))
Java Script 正则表达式的使用示例的更多相关文章
- Java Script正则表达式语法学习
今天在做页面交互验证时,在HTML里面第一反应居然用了Java 处理正则表达式的语法... ---------------------------------题记 学习来源 http://www.ru ...
- js学习笔记-Java script正则表达式
创建正则表达式 js中的正则包含在两个斜杠之间:/abc+v/ 正则中的特殊字符 \: 1.当后面不是特殊字符时表示字符边界 2.当后面是特殊字符时表示转义 ^: 1.匹配首位,例如,/^A/ 并不会 ...
- Java Script 学习笔记
JS编程习惯类: 1. 命名 著名的变量命名规则 只是因为变量名的语法正确,并不意味着就该使用它们.变量还应遵守以下某条著名的命名规则: Camel 标记法 首字母是小写的,接下来的字母都以大写字符开 ...
- Java Script 第二章.
对象: JavaScript中的所有事物都是对象:字符串,数组,数值,函数..... JavaScript中提供多个内建对象,比如说 String, Date, Array等等.对象只是带有属性和 ...
- Java script基础
Java script基础 Js的每个语句后面都要有分号. <script type="text/java script">所有JS内容</script> ...
- Java script 看看黑客怎么写的
在2011年的BlackHat DC 2011大会上Ryan Barnett给出了一段关于XSS的示例java script 代码: ($=[$=[ ] ] [(__=!$+$)[_=-~-~-~$] ...
- Java与正则表达式
Java与正则表达式 标签: Java基础 正则 正如正则的名字所显示的是描述了一个规则, 通过这个规则去匹配字符串. 学习正则就是学习正则表达式的语法规则 正则语法 普通字符 字母, 数字, 汉字, ...
- 解析android framework下利用app_process来调用java写的命令及示例
解析android framework下利用app_process来调用java写的命令及示例 在android SDK的framework/base/cmds目录下了,有不少目录,这些目的最终都是b ...
- Java中正则表达式去除html标签
Java中正则表达式去除html的标签,主要目的更精确的显示内容,比如前一段时间在做类似于博客中发布文章功能,当编辑器中输入内容后会将样式标签也传入后台并且保存数据库,但是在显示摘要的时候,比如显示正 ...
随机推荐
- NGUI系列教程九(自制ListView)
在NGUI中可以很方便的实现ListView的控件,ListView就好比IOS或Android平台中使用手势上下拖动的控件.在Unity3D中实现ListView的原理无非就两种,第一种是摄像机不动 ...
- 各个浏览器下实现Ajax的JS
var xmlhttpget; try { // Firefox, Opera 8.0+, Safari xmlhttpget = new window.XMLHttpRequest( ...
- 3123 高精度练习之超大整数乘法 - Wikioi
题目描述 Description 给出两个正整数A和B,计算A*B的值.保证A和B的位数不超过100000位. 输入描述 Input Description 读入两个用空格隔开的正整数 输出描述 Ou ...
- ASP.NET遍历textbox文本框
Asp.Net如何遍历所有TextBox控件并清空 asp.net 不能像window那样直接遍历this.Controls就可以了,因为: this.Controls只是包含了Page根一级的con ...
- 【递推】BZOJ 3930: [CQOI2015]选数
Description 我们知道,从区间[L,H](L和H为整数)中选取N个整数,总共有(H-L+1)^N种方案.小z很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的N个整数都求一次最大公 ...
- NOI2015考试小结
这次NOI2015有幸获得金牌考进了国家集训队,意味着我的OI退役时间既省选之后有延迟了好几个月,又有了新的目标吧. 先说一下考试之外的感受吧,学军宿舍很牛X,接待NOIers而不提供插座,唯一可以用 ...
- 用CodeViz绘制函数调用关系图(call graph)
CodeViz是<Understanding The Linux Virtual Memory Manager>(at Amazon,下载地址在页尾)的作者 Mel Gorman 写的一款 ...
- Ubuntu环境下手动配置Hadoop1.2.1
/×××××××××××××××××××××××××××××××××××××××××/ Author:xxx0624 HomePage:http://www.cnblogs.com/xxx0624/ ...
- MyBatis之传入参数parameterType
在MyBatis的select.insert.update.delete这些元素中都提到了parameterType这个属性.MyBatis现在可以使用的parameterType有基本数据类型和Ja ...
- android 电容屏(一):电容屏基本原理篇
平台信息: 内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博 ...