正则表达式(*?,+?,??三种形式的区别)
*? 重复任意次,但尽可能少重复
+? 重复1次或更多次,但尽可能少重复
?? 重复0次或1次,但尽可能少重复
身份证验证Input标签
onkeyup="this.value=Number(this.value.replace(/D/g,''))" onafterpaste="Number(this.value.replace(/D/g,''))"
关闭贪婪
<[^>]+> //重点学习^语法和非贪婪模式配合使用,并且注意必须包含在[]中
仅匹配第一个,非贪婪模式,配合上面使用
(.+?)
C# 正则表达式取中间内容
(?<=前缀)(.+?)(?=后缀)
php中文以及utf-8匹配的问题,使用[x80-xff] 来搜索中文
<?php header("Content-type: text/html; charset=utf-8"); $subject = "[2016-08-10]中国[2016-08-11]日本"; $pattern = '/[d{4}-d{2}-d{2}][x80-xff]+[^[]/'; preg_match_all($pattern,$subject,$out); var_export($out); ?>
javascript中,匹配多个建议使用exce,类似于php的preg_match_all
// 从[218.93.229.130] 中 抽出 218.93.229.130 var subject = "[218.93.229.130]"; var pattern = /[(.+?)]/ pattern.exec(subject) //["[218.93.229.130]", "218.93.229.130"]