正则表达式匹配不包括一个字符串或者几个字符串 正则表达式匹配数字

正则表达式怎样匹配一个字符串,条件是不包括一个子串或者多个子串?搜寻网上答案,众说纷纭,七七八八,有的十分怪异,有的不好使。其实,这个表达式很简单,就是不要使用"^"这个控制符,而使用"?!"。这个控制串在网上查不到解释,不知道具体功能。不过,它可以用来匹配不包括的字符串。

正则表达式匹配不包括一个字符串或者几个字符串 正则表达式匹配数字
正则表达式最常见的一个功能就是html分析,利用它搜寻tag。比如要找<table ....... >。那么可以这样,控制串前部为<tablebabc”((?!>).)*>。看见里面的“."了吧,意思是所有字符,本来它不包括换行符,在C#下,你可以通过调用函数忽略掉换行符。但是这个".",不是无条件的,而是有限制的,就是不能包括>。这下子就好了,匹配过程会在第一个>字符那里停下来,因为马上下一个匹配符就是>,所以整个匹配就结束了,最后一个字符是>。至此,整个tag被匹配出来。

本文出了说明如何使用不包括子串的匹配,而且要说明的是,?!这个控制符控制的是字符串,而非字符,这是与^的不同之处,也是有实用价值的地方。仅仅不包括一个字符,有多大用处?还有就是,你可以连续使用这个控制符,用于不包括多个字符串。 比如对于文本ab2cd3ef 1234 xyz,a((?!d).)*将得到ab2c,a((?!23).)*将得到ab2cd3ef 1,a((?!23)(?!c).)*将得到ab2,就是说不包括多个字符串匹配时,停止于第一个不包括的字符串处。不包括多个字符串用于分析html时,可以将某些具有关键字符串的tag区分出来,因为不包括>是必须的。比如你可以把所有<table找出来,形成一个数组或表,然后把不不包括关键字的元素剔除,不就剩下有关键字的元素了吗?

  

爱华网本文地址 » http://www.aihuau.com/a/25101012/135971.html

更多阅读

做不裂轻乳酪的几个小秘密--6寸轻乳酪 轻乳酪芝士蛋糕开裂

之前写过一个轻乳酪,是用本鸡蛋做的。6寸轻乳酪蛋糕今天的是用洋鸡蛋做的,不加黄油版本,方子如下:低粉20克,玉米淀粉8克,细砂糖60克,奶油奶酪150克,牛奶75克,淡奶油75克,普通鸡蛋3个使用模具:6寸活底硬模烘焙方式:水浴法,140度60分钟。第

提示WinRAR不是一个免费软件 winrar免费版64位

问 题:打开压缩文件,但提示“WinRAR不是一个免费软件,在40天的使用期结束后,你必须购买一个许可或者将它从你的计算机中删除”。但是点关闭后,仍然可以继续使用。原 因:40天试用期已到解 决:不影响使用,只是有些烦人可以去下个破解版的无限

厚古薄今:斯托克顿和保罗根本就不是一个级别的控卫

厚古薄今:斯托克顿和保罗根本就不是一个级别的控卫 由 西徳隆东墙 发表在虎扑篮球·湿乎乎的话题 http://bbs.hupu.com/votelz认为评价斯托克顿的两个点是1991年和1996年,先看1991年(梦一内容转帖自网易考古系),1991年是斯托克顿进入联盟

声明:《正则表达式匹配不包括一个字符串或者几个字符串 正则表达式匹配数字》为网友遹柏景分享!如侵犯到您的合法权益请联系我们删除