regex - TDIPerlRegEx 区分大小写匹配的正则表达式
问题描述
如何为 TDIPerlRegEx 创建正则表达式以进行区分大小写的匹配?我试过 (?i-) 但我仍然发现以小字符开头的单词。
我想创建正则表达式来查找两个单词。第一个单词必须以第一个字符大写开头,第二个单词的最后两个字符是'th'。
TDIPerlRegEx.Create{$IFNDEF DI_No_RegEx_Component}(nil){$ENDIF};
RegEx_Seek_1.MatchPattern := '(*UCP)(?m)(?i-)(?<=\W)[A-Z]\w{2,12}\W\w{3,12}th(?=\W)';
我获得的结果包括第一个字符小写。
文本示例:首先,把你与生俱来的权利卖给我。你呼吸的气味像苹果。“智慧在没有”。你的大地如同黄铜。大卫进来了。愤怒带来了刀剑的惩罚。
现在要匹配的项目是'Wisdom crieth' 和'David cometh'。
解决方案
你有一个错字,禁用不区分大小写的方法是(?-i)
,不是(?i-)
TDIPerlRegEx.Create{$IFNDEF DI_No_RegEx_Component}(nil){$ENDIF};
RegEx_Seek_1.MatchPattern := '(*UCP)(?m)(?-i)(?<=\W)[A-Z]\w{2,12}\W\w{3,12}th(?=\W)';
推荐阅读
- python - Spark 的 MapType 是确定性的,即使用 map_keys/map_values 手动爆炸时键值对是否正确配对?
- state - Apache Flink 中的有状态函数
- c - 在 c 编程语言中联合的实际使用?
- hive - Cloudera 发行版中的 hive-site.xml 在哪里?
- scala - 如何在 Spark 和 Scala 中动态构建模型类
- javascript - Gulp 修复生成文件的导入
- android - 即使我在android登录表单中输入了错误的信用,总是得到响应匹配(200)并登录?
- go - 是否有可能从 err interface Go 获取额外的数据?
- c++ - C++ 代码中的错误:在函数“int main(int, char**)”中:
- django - 分叉 django-oscar 视图显示错误