建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 网站开发 > asp.net教程 >

正则表达式实例分析

时间:2011-04-02 09:17来源: 作者: 点击:
建站学再次给各位奉献一些正则表达式,希望对你们有所帮助。 数学公式正则表达式: (?'kh'()*([-+]){0,1}[0-9.]+(?'-kh'))*([+-*/]{1}(?'kh'()*((?<=()([-+]){0,1})?[0-9.]+(?'-kh'))*)+(?('kh')(?!)) 匹配加减乘除数学公式,如:((1+2)-3*4) (?'kh'()

建站学再次给各位奉献一些正则表达式,希望对你们有所帮助。

数学公式正则表达式:
(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))

匹配加减乘除数学公式,如:((1+2)-3*4)

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
可以"("开始,压入堆栈统计括号数量,*代表可以出现0次或多次

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
可以出现一次正负号

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
0-9数字,一个或多个

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
可以")"结束,弹出堆栈统计括号数量,*代表可以出现0次或多次

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
橙色括号分组说明可以出现一次或多次,如公式1+2 ,这个括号里是匹配 2
红色要求+-*/出现一次

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
判断括号开始时,可以有正负号,?代表使用懒惰匹配,即如:1+(((2-3)+4)+5)时,只匹配数字2前面的一个括号一次

(?'kh'\()*([\-\+]){0,1}[0-9\.]+(?'-kh'\))*([\+\-\*\/]{1}(?'kh'\()*((?<=\()([\-\+]){0,1})?[0-9\.]+(?'-kh'\))*)+(?('kh')(?!))
检查括号是否配对

(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片