Tag: 正则表达

使用正则表达式比IndexOf更快?

我有一个运行的应用程序,它查看队列中的项目,然后根据某些关键字应用一个类别 – 然后将其插入到数据库中。 我正在使用IndexOf来确定是否存在某个关键字。 这是理想的方式还是RegEX更快? 每秒大约有10件物品正在处理中。

使用平衡组的正则表达式

我有一个基本的文本模板引擎,使用这样的语法: foo bar %IF MY_VAR some text %IF OTHER_VAR some other text %ENDIF %ENDIF bar foo 我有一个正则表达式的问题,我用来解析它,因为它没有考虑嵌套的IF / ENDIF块。 我正在使用的当前正则表达式是: %IF (?[\w_]+)(?.*?)%ENDIF 我一直在阅读平衡捕获组(.NET的正则表达式库的一个特性),因为我理解这是支持.NET中“递归”正则表达式的推荐方法。 我一直在玩平衡组,到目前为止已经提出了以下建议: ( ( (?’Open’%IF\s(?[\w_]+)) (?.*?) )+ ( (?’Close-Open’%ENDIF)(?.*?) )+ )* (?(Open)(?!)) 但这并不完全符合我的预期。 例如,它捕获了很多空组。 救命?