/^(0|[1-9]\d*)([.]5)?$/ 在PHP正则中是什么意思 ?

 1 ^以什么开头
 2 ()分组
 3 |或的意思
 4 \d 匹配任何数字字符串 [0-9]
 5 0|[1-9]\d* 0 或1-9之间的数+任意数字零次或多次   开头
 6 ()分组
 7 []原子表
 8 [.]5匹配.5
 9 ? 零次或1次
10 总结: 必须以0 或1-9+任意字符0次或多次开头,可以是.5结尾
11 <?php
12     $preg =‘/^(0|[1-9]\d*)([.]5)?$/‘;
13     //$string = ‘925‘;
14     //$string = ‘92.5‘;
15     //$string = ‘0.5‘;
16     //$string = ‘0‘;
17     preg_match_all($preg,$string,$arr);
18
19     print_r($arr);
时间: 2024-10-19 06:40:07

/^(0|[1-9]\d*)([.]5)?$/ 在PHP正则中是什么意思 ?的相关文章

正则中表示一个反斜线要使用四个反斜线

java中反斜线'\'通常和其他字符组合使用,我们有时候称它为转义字符 java代码里 要表示一个反斜线'\'就要写成:双斜线形式"\\",第一个反斜线代表转义,第二个可以看做普通字符 java中奇数个的反斜线不允许出现,除非后面有其他字符,那么最后一个反斜线就被当做了转义字符 正则中要表示一个反斜线就要使用四个反斜线表示"\\\\" 四个反斜线可理解为:前两个"生成"的 转义后两个"生成"的反斜杠.

正则中的括号()的用途(匹配子项或是分组)

首先我们前面介绍过,replace()方法中的第二个参数若是回调函数,那么这个回调函数中的参数就是匹配成功后的结果.....,那么有没有考虑回调函数中有多个参数呢? 先举个例子: <!DOCTYPE> <html> <head> <meta charset='utf-8'> <title></title> </head> <script type="text/javascript"> win

JQuery_2.1.0_日记 5.4 Sizzle选择器(一) 正则中那些\\\\和\\

Sizzle中恐怖的正则. 字面量的正则也许还好理解,那么由字符串编译而成的正则呢. \\和\\\\ 由字符'\\\\'编译而成的正则是/\\/,第一个\转义第两个\,所以其匹配一个\字符(这个\字符是代表字符本身) Test_Script var s = '\\' ; alert(s); // '\' var rs = '\\\\' ; var matches = s.match(new RegExp(rs)); alert(matches[0]) // '\' 由字符串'\\3'编译而成的正

正则中的预判

预判:在正式匹配正则表达式之前,先预读整个字符串,进行初步匹配,如果预判都未通过,则不再验证! 1)(?=表达式): 先浏览字符串是否满足表达式的要求 何时使用:只要正则中出现类似"而且" 比如:4位数字,但不能包含4和7 (?=[^47]$) 是否由除了4,7之外的字符组成 2)(?!表达式):先检查字符串是否不满足表达式要求 比如:6位以上密码. 字母,数字组成 首字母不能是数字: [a-zA-Z][a-zA-Z0-9]{5,} 必须至少包含1个大写字母 不能都由小写字母和数字组成

(转)正则中需要转义的特殊字符小结

既然用到了正则来解析数据,这边顺便记录一下正则中需要转义的特殊字符 特别字符 说明 $ 匹配输入字符串的结尾位置.如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'.要匹配 $ 字符本身,请使用 \$. ( ) 标记一个子表达式的开始和结束位置.子表达式可以获取供以后使用.要匹配这些字符,请使用 \( 和 \). * 匹配前面的子表达式零次或多次.要匹配 * 字符,请使用 \*. + 匹配前面的子表达式一次或多次.要匹配 + 字符,请使用 \+.

42 python中正则中的分组 正则中匹配字符串的起始和结尾以及单词边界

第七课 正则中的分组 # 分组 # 正则表达式中用一对圆括号括起来的部分被称为一个分组 # '(\d\d\d)-(\d\d)' import re ''' 1. 只有圆括号括起来的部分才算一组,如果正则表达式中既有被圆括号括起来的部分, 也有未被圆括号括起来的部分,那么只将圆括号括起来的部分算一组 2. group方法,如果不指定参数,会返回匹配的整个字符串,如果加参数,会返回指定 分组的字符串,组索引从1开始 3. groups方法,以元组形式返回匹配的所有分组 4. 分组的索引是从1开始的

41 正则中匹配多个字符串匹配任意单个字符正则中使用字符串重复、可选和特殊字符

第三课 正则中匹配多个字符串 # 匹配多个字符串 # 择一匹配符号, | import re s = 'Python|Ruby|Java|Swift' m = re.match(s,'PythonRuby') print(m) # <re.Match object; span=(0, 6), match='Python'> m = re.search(s, 'I love Python.') print(m) # <re.Match object; span=(7, 13), match

JS不支持正则中的负向零宽断言

今天在项目中用到了正则表达式,并且需要用负向零宽断言 (?<=exp) 进行筛选,结果运行时报 Invalid group 错,一开始以为是自己很久没用表达式写错了,查阅了一下正则语法后发现并没有写错. 到网上一搜才发现,JS不支持负向的 (?<=exp) 和 (?<!exp),只支持正向的(?=exp) 和 (?!exp).

正则中关于修饰符g以及exec和match区别的一个小demo

代码: 输出结果 补充: reg.lastIndex:下一次正则捕获的开始查找的索引位置 ->正则的懒惰性就是因为默认情况下lastIndex值都是0,我们不管执行几次exec,都是从字符串的开始位置查找,那么每一次捕获到的都是第一个符合的内容