• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >vbs > VBS教程:正则表达式简介 -定位符

VBS教程:正则表达式简介 -定位符

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了vbs正则表达式,vbs正则,vbs教程,vbs教程视频,wincc vbs教程等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

定位符

到现在为止,所看到的示例都只考虑查找任何地方出现的章节标题。出现的任何一个字符串 'Chapter' 后跟一个空格和一个数字可能是一个真正的章节标题,也可能是对其他章节的交叉引用。由于真正的章节标题总是出现在一行的开始,因此需要设计一个方法只查找标题而不查找交叉引用。

定位符提供了这个功能。定位符可以将一个正则表达式固定在一行的开始或结束。也可以创建只在单词内或只在单词的开始或结尾处出现的正则表达式。下表包含了正则表达式及其含义的列表:

字符描述
^匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。
$匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。
\b匹配一个单词边界,也就是指单词和空格间的位置。
\B匹配非单词边界。

不能对定位符使用限定符。因为在一个换行符或者单词边界的前面或后面不会有连续多个位置,因此诸如 '^*' 的表达式是不允许的。

要匹配一行文字开始位置的文字,请在正则表达式的开始处使用 '^' 字符。不要把 '^' 的这个语法与其在括号表达式中的语法弄混。它们的语法根本不同。

要匹配一行文字结束位置的文字,请在正则表达式的结束处使用 '$' 字符。

要在查找章节标题时使用定位符,下面的 Visual Basic Scripting Edition 正则表达式将匹配位于一行的开始处最多有两个数字的章节标题:

/^Chapter [1-9][0-9]{0,1}/

VBScript 中相同功能的正则表达式如下:

"^Chapter [1-9][0-9]{0,1}"

一个真正的章节标题不仅出现在一行的开始,而且这一行中也仅有这一个内容,因此,它必然也位于一行的结束。下面的表达式确保所指定的匹配只匹配章节而不会匹配交叉引用。它是通过创建一个只匹配一行文字的开始和结束位置的正则表达式来实现的。

/^Chapter [1-9][0-9]{0,1}$/

对 VBScript 则使用:

"^Chapter [1-9][0-9]{0,1}$"

匹配单词边界有少许不同,但却给正则表达式增加了一个非常重要的功能。单词边界就是单词和空格之间的位置。非单词边界就是其他任何位置。下面的 Visual Basic Scripting Edition 表达式将匹配单词 'Chapter' 的前三个字符,因为它们出现在单词边界后:

/\bCha/

对 VBScript 为:

"\bCha"

这里 '\b' 操作符的位置很关键。如果它位于要匹配的字符串的开始,则将查找位于单词开头处的匹配;如果它位于改字符串的末尾,则查找位于单词结束处的匹配。例如,下面的表达式将匹配单词 'Chapter' 中的 'ter',因为它出现在单词边界之前:

/ter\b/

以及

"ter\b"

下面的表达式将匹配 'apt',因为它位于 'Chapter' 中间,但不会匹配 'aptitude' 中的'apt':

/\Bapt/

以及

"\Bapt"

这是因为在单词 'Chapter' 中 'apt' 出现在非单词边界位置,而在单词 'aptitude' 中位于单词边界位置。非单词边界操作符的位置不重要,因为匹配与一个单词的开头或结尾无关。

</div>

您可能想查找下面的文章:

  • VBS教程:正则表达式简介
  • VBS教程:正则表达式简介 -正则表达式
  • VBS教程:正则表达式简介 -早期起源
  • VBS教程:正则表达式简介 -使用正则表达式
  • VBS教程:正则表达式简介 -正则表达式语法
  • VBS教程:正则表达式简介 -建立正则表达式
  • VBS教程:正则表达式简介 -优先权顺序
  • VBS教程:正则表达式简介 -普通字符
  • VBS教程:正则表达式简介 -特殊字符
  • VBS教程:正则表达式简介 -非打印字符

相关文章

  • VBS教程:运算符-And 运算符
  • vbs 获取当前目录文件数量的代码(不包括子文件夹中的)
  • vbs解决处理TXT文本数据相关问题实现代码
  • 用vbs实现的exe2swf工具脚本代码
  • 用vbs将输出内容写到屏幕以覆盖当前屏幕上的内容的方法
  • VBS教程:方法-WriteLine 方法
  • VBS教程:VBscript语句-Const 语句
  • vbs获取当前时间日期的代码
  • VBS脚本写的Windows硬件检测工具分享
  • vbs base64 解密脚本代码

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • IE浏览器增加“复制图像地址”的右键菜单的vbs代码
    • 收集的一些经典的vbs脚本大全
    • 用vbs读取index.dat内容的实现代码
    • 病毒专杀VBS模块
    • VBS中Select CASE的其它用法
    • 利用WScript.Shell对象隐藏cmd命令行运行框的实现代码
    • VBS教程:VBScript 语句-Randomize 语句
    • VBS sendkeys 模拟击键操作 问题解决
    • 使用 Iisext.vbs 列出 Web 服务扩展文件的方法
    • VBS教程:属性-Type 属性

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有