以图明志

PHP服务器脚本

PHPCMS发布页面的栏目选择问题

正则表达式解决
在PHPCMS的发布页面中有个BUG,即使编辑无权限访问某个栏目,但是也还都可以在发布页面的栏目下拉菜单中选择该栏目,并可以将文章发布到该栏目下。这个BUG如何修复呢?我们先来看看发布页面的下拉菜单是如何生成的。发布页面的模板文件是在 /admin/templates/content_add.tpl.php,其表单是通过下面语句输出的……

PHP服务器脚本

PHP正则表达式的修饰符

让正则表达式更灵活
在PHP中使用正则表达式时,会与其它语言有些差别,这个差别的其中之一是PHP有对正则的修饰符(限定符)的存在。我们在PHP正则表达式的学习中会碰到修饰符,那么关于PHP正则表达式修饰符的理解以及使用我们需要注意什么呢?那么我们来具体的看看它的概念以及相关内容。

PHP服务器脚本

PHP用正则匹配获取URL中的域名

介绍两个正则表达式
在PHP的官网上看到的parse_url()函数的替代方案。结果和parse_url()函数差不多,是使用正则实现的。URI 是 Web上可用的每种资源 - HTML文档、图像、视频片段、程序等 - 由一个通用资源标志符(Uniform Resource Identifier, 简称"URI")进行定位。

开源项目与工具

正则表达式是如何工作的?

谈谈正则的工作原理
正则表达式 ,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。粗浅地编写正则表达式是造成性能瓶颈的主要原因之一,但还有很多可以改进正则表达式效率的地方。

PHP服务器脚本

PHP正则表达式移除超链接文本

几个解决方法
有些时候,我们需要对一些html文本进行处理,比如需要将文本中的超链接内容去除,这个时候就需要用到正则表达式了。比如你可以用$str = preg_replace("/<a[^>]*href=[^>]*>|<\/[^a]*a[^>]*>/i","",$strhtml); 这段来实现需求,如果想要更多解决方法,可以参看以下的。

开源项目与工具

15个Web开发实用的正则表达式技巧

实用到你需要收藏
对于开发人员来说,正则表达式是一个非常有用的功能。它提供了查找,匹配,替换句子,单词,或者其他格式的字符串。在这篇文章里,我已经编写了15个贼有用的正则表达式,WEB开发人员都应该将它收藏到自己的工具包。

编程思想

人人都看得懂的正则表达式教程

轻松学习正则表达式
编写验证规则最流行和最简单的方法就是正则表达式了,但唯一的一个问题是正则表达式的语法太隐晦了,让人蛋疼无比。很多开发者为了在项目中应用复杂的验证,经常要使用一些小抄来记住正则式的复杂语法和各种常用命令。在这篇文章中,我将试图让大家明白什么是正则表达式,以及如何更轻松地学习正则表达式。

JavaScript

JavaScript正则表达式的浏览器的差异

不了解这些差异在开发时会浪费很多时间
JavaScript中的正则表达式在不同的浏览器中得到的结果可能会有差异,下面把正则表达式在五大主流浏览器(IE、Firefox、Chrome、Safari、Opera,以当前版本为准)之间的差异整理一下罗列出来。

JavaScript

常用的JavaScript正则表达式

收藏一些常用的表达式
正则表达式用于字符串处理,表单验证等场合,实用高效,但用到时总是不太把握,以致往往要上网查一番。我将一些常用的表达式收藏在这里,作备忘之用。比如匹配中文字符的正则表达式、计算字符串的长度、匹配空行的正则表达式、匹配HTML标记的正则表达式等等。

开源项目与工具

高效准确的正则表达式的书写方法

避免误匹配与漏匹配
如果纯粹是为了挑战自己的正则水平,用来实现一些特效(例如使用正则表达式计算质数、解线性方程),效率不是问题;如果所写的正则表达式只是为了满足一两次、几十次的运行,优化与否区别也不太大。但是,如果所写的正则表达式会百万次、千万次地运行,效率就是很大的问题了。

JavaScript

[专题] 正则总结:正则表达式在js中的高级应用

子模式、正反向查找、回溯等
用来指定重复次数的元字符只能作用于紧挨着它的字符或元字符,而在实际应用中我们需要进行重复匹配的字符往往不一定就只是一个字符或元字符,就如reUrl中所要匹配的“http”和“net”就是多个字符,这时候就可以使用(和)将多个字符括起来作为一个独立的元素来使用。

JavaScript

[专题] 正则总结:JavaScript中的正则表达式

定义、方法与使用
在javascript我们可以通过内建的类来定义一个正则表达式。实际上RegExp类的构造函数可以接受两个参数,除了本身需要匹配的模式字符串外,还可以定义指定额外处理方式的第二个参数。这两种定义方式都是可行的,完全可以根据个人习惯进行选择。

开源项目与工具

[专题] 正则入门:非获取匹配

只进行匹配,不保存结果供以后引用
我们首先查看一下表达式的区别,为了要使用后向引用,我们用“(”和“)”把“[\w.]+\b”包起来,使它成为一个子模式。我们知道,只有这样,才可以用 $1 去引用它,这里,我们发现使用子模式的一个作用:系统会在幕后将所有的子模式保存起来,以供后向引用使用(包含查找时的后向引用 和 替换时的后向引用)。

开源项目与工具

[专题] 正则入门:后向引用文本替换

替换电话号码格式
正则表达式的三部曲应该是:1、查找;2、引用匹配了的文本(后向引用);3、有选择地替换文本。需要注意的是:大部分语言的正则表达式实现,在查找中,使用后向引用来代表一个子模式,其语法是“\数字”;而在替换中,其语法是“$数字”。

开源项目与工具

[专题] 正则入门:“或”匹配

reg1|reg2
在正则表达式中,可以使用“|”将一个表达式拆分成两部分“reg1|reg2”,它的意思是: 匹配所有符合表达式 reg1 的文本 或者 符合表达式 reg2 的文本。有的时候,我们要取消某段文字中的加粗、斜体等效果,我们想匹配所有的“<b>”、“</b>”或者 “<i>”、“</i>”,然后把它们替换成空。

开源项目与工具

[专题] 正则入门:子模式

用小括号将模式中的子字符串括起来
在正则表达式中,可以使用“(”和“)”将模式中的子字符串括起来,以形成一个子模式。将子模式视为一个整体时,那么它就相当于一个单个字符。我们可以将匹配过程理解成这样:子模式“(<br\s*\/?>)”首先匹配所有“<br>”、“<br/>”或“<br />”;然后,将每一个匹配结果视为一个整体(相当于单个字符);接着,匹配这个整体连续出现两次或以上的文本。
1 / 3 首页 < Prev 1 2 3 Next > 尾页 页码: