php专区

 首页 > php专区 > 正则表达式 > PHP匹配多行的正则表达式分析_正则表达式

PHP匹配多行的正则表达式分析_正则表达式

分享到:
【字体:
导读:
          PHP匹配多行的正则表达式分析,需要的朋友可以参考下,多用于采集替换等。...

复制代码 代码如下:






aaaa
bbbb
cccc
dddd


像这种的文本,用PHP的正则表达式怎么匹配??
  我最初的想法:
  pattern:"/[.n]*?"  (这个是错误的)
  想法思路:"."能匹配任意非换行字符,使用"[.n]"组合,使其能够匹配所有的字符(包括换行符),但天有不测风云啊——悲剧了,结果什么都没有!
  经过一番啃骨之后写了另一个
  pattern:"/(.|n)*?"  (这个是可以)
  将“[]”换成"()",使用“|”做一个或选择,这样就行了(纳闷了,怎么"[]"也是选择方式的就不行???)
  网上也有一答案:
  PATTEN: "/.*?/is"  (很简洁很方便,赞成此方法)

后记: 怎么"[]"也是选择方式的就不行???你知道的话别忘了告诉小弟一声哦……

[]里的.相当于.,仔细看正则的说明去吧

涉及到换行一般考虑用模式修正符s

s (PCRE_DOTALL)
如果设置了这个修饰符, 模式中的点号元字符匹配所有字符, 包含换行符. 如果没有这个 修饰符, 点号不匹配换行符.

[]里面的是一些范围或者组合
lz试一下"/[.]*?/is"这个就知道了,
还有()很强大的
分享到:
检查素数的正则表达式分享_正则表达式
这个正则表达式如入所示: 检查素数与否的正则表达式 要使用这个正规则表达式,你需要把自然数转成多个1的字符串,如:2 要写成 “11”, 3 要写成 “111”, 17 要写成“11111111111111111”,这种工作使用一些脚本语言可以轻松的完成。 一开始我对这个表达式持怀疑态度,但仔细研究了一下这个表达式,发现是非常合...
用正则表达式判断字符串是汉字还是拼音的...
复制代码 代码如下: function checkFormat(str) { if (escape(str).indexOf("%u")!=-1) alert("不能含有汉字"); else if(str.match(/\D/)!=null) { alert('不能含有字母'); } }
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……