当前位置:  开发笔记 > 编程语言 > 正文

正则表达式:如果字符串末尾的模式不匹配

如何解决《正则表达式:如果字符串末尾的模式不匹配》经验,为你挑选了2个好方法。

我有以下正则表达式,我想匹配任何显式点后跟一个或多个:

     

如果它出现在字符串的末尾,我希望此正则表达式不匹配此模式.

string = Regex.Replace(string, "\.((<[\/biu]+>)+)", ".$1||")

例如:

This should match. allright.

This shouldn't match.

Evan Fosmark.. 13

"\.((<[\/biu]+>)+)(?!$)"

使用带有$符号的否定先行断言来检查行尾.(记住,$所以你要匹配行尾匹配.)



1> Evan Fosmark..:
"\.((<[\/biu]+>)+)(?!$)"

使用带有$符号的否定先行断言来检查行尾.(记住,$所以你要匹配行尾匹配.)



2> Gumbo..:

你可以使用原子分组:

\.(?>(?:<\/?[biu]>)+)(?!$)

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有