易语言

关注公众号 jb51net

关闭
首页 > 软件编程 > 易语言 > 易语言用正则表达式取中间文本

易语言利用正则表达式实现获取文本中间内容的代码

作者:易语言源码教程

今天小编就为大家分享一篇关于易语言利用正则表达式实现获取文本中间内容的代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

取中间文本代码

.版本 2
.支持库 RegEx
.程序集 窗口程序集_启动窗口
.子程序 _取中间文本按钮_被单击
取中间文本编辑框.内容 = 取中间文本 (完整文本编辑框.内容, “~”, 表达式编辑框.内容, “~”, 到整数 (下标编辑框.内容))
.子程序 取中间文本, 文本型, , 返回匹配的文本 多个会以{1}{2}形式输出
.参数 原文本, 文本型
.参数 左边文本, 文本型
.参数 中间文本类型, 文本型, 可空
.参数 右边文本, 文本型
.参数 引用下标, 整数型, 可空
.局部变量 正则, 正则表达式
.局部变量 搜索结果, 搜索结果, , "0"
.局部变量 匹配结果, 文本型
.局部变量 成员数, 整数型
.如果真 (中间文本类型 = “”)
  中间文本类型 = “.*?”
.如果真结束
正则.创建 (“(?<=\Q” + 左边文本 + “\E)(” + 中间文本类型 + “)(?=\Q” + 右边文本 + “\E)”, ) ' 使用 \Q 开始,\E 结束,可使中间的标点符号失去特殊意义,将中间的字符作为普通字符。
搜索结果 = 正则.搜索全部 (原文本)
成员数 = 取数组成员数 (搜索结果)
.如果真 (成员数 = 0)
  返回 (“”)
.如果真结束
.如果真 (成员数 > 0)
  .如果 (成员数 = 1)
    匹配结果 = 搜索结果 [1].取匹配文本 (原文本, )
    返回 (匹配结果)
  .否则
    .如果 (引用下标 > 0 且 引用下标 ≤ 成员数)
      匹配结果 = 搜索结果 [引用下标].取子匹配文本 (原文本, 1, )
    .否则
      匹配结果 = 正则.替换 (原文本, “(\{$&\})”, 1, , 假, 真)
    .如果结束
  .如果结束
.如果真结束
返回 (匹配结果)

运行结果:

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:
阅读全文