(?(expression)yes|no)这代表一个选择(三目运算符),假如 expression 在这里被搜索到的话就执行 yes 部门,不然就执行 no 部门。留意沒有空格!(?<=expression) – 这是说在此刻位置的左边有 expression。
譬喻:檢測字串中數位爲 “0.1”-“9.9”
谜底﹕^[0-9]\.(?(?<=0\.)[1-9]|[0-9])$
<?php $str = '1.0'; $search = '/^[0-9]\.(?(?<=0\.)[1-9]|[0-9])$/'; preg_match($search,$str,$r); if($r) { echo 'OK'; }else { echo 'NO'; } ?>
尚有一个例子也是用到三目运算正则
上一篇: PHP收罗链接,相对链接转为绝对链接 | 下一篇:获取<a>链接标签。从Snoopy类中提取函数» 标签:分享到: 更多
相关日志:
PHP正则匹配中文UTF-8 和 gb2312的正则区别
一个正则表达式 匹配以“abc”开头后头不能包括“x”、“y”、“z”字符
JS和PHP的正则表达式的区别
php收罗li标签的链接与文本内容
php官网表明正则中的“递归模式”
深入浅出之正则表达式 之媒介先容
PHP正则 去掉所有html的属性部门
RegexBuddy是个很是好的正则东西
匹配一个<table>并过滤中间table