zoukankan      html  css  js  c++  java
  • tcl使用小结

    在工作中使用tcl几年了,基本都是把测试用例转化成自动化脚本,没有用太多复杂的功能。我总结下自己用的比较多的地方:

    我们需要把一个模块的配置命令写在一个函数中,每个命令作为可变参数传入,便于后期维护。

    1.可变参数的函数

    我们需要把一个模块的配置命令写在一个函数中,每个命令作为可变参数传入,便于后期维护。

    proc VxlanConfig {args} {
        #存放命令字符串
        set cmd ""
        #进入vxlan配置模式
        。。。
        #配置vxlan实例
        #lsearch 命令在给定列表中搜索与匹配字符串匹配的元素,成功就返回正确的元素索引,否则返回-1。
        set index [lsearch "-vxlan"]
        set value args[index+1]
        set cmd "-vxlan"+value
        
    }

    2.列表的操作

    lsearch ?-exact? ?-glob? ?-regexp? list pattern   

        返回list 中第一个匹配模式 pattern 的元素的索引,如果找不到匹配就返回-1。

        -exact、-glob 、-regexp 是三种模式匹配的技术。-exact表示精确匹配;

        -glob 的匹配方式和 string match命令的匹配方式相同,-regexp 表示正规表达式匹配。

    3.正则表达式匹配,用于判断结果,用得最多的

    两种模式匹配, 一种是简单的"通配符"样式,一种是正则表达式

    (1)string match 通配符样式的匹配

    string match ?-nocase? 模式 string ; -nocase表示忽略大小写,常用的通配符与C类似,*表示任意字符串,?表示任意的一个字符,

    (2)正则表达式

    regexp  [选项]  <正则表达式>  <匹配的原始字符串>  <保存匹配后字符串的变量>  [其他保存子模式匹配字符串的变量]

    上面regexp中用[]括起来的部分是可选的,其他<>括起来的部分是必须的,如果正则表达式匹配从原始字符串中匹配到了内容,则命令返回1并且将匹配到的内容<保存匹配后字符串的变量>中。

    反斜杠序列

    简要说明

    d

    表示0-9之间的数字

    D

    除了0-9之间数字的其他字符,与d作用相反

    s

    空白符,包括空格、换行、回车、制表、垂直制表、换页符等

    S

    非空白符,与s作用相反

  • 相关阅读:
    个人作业——软件工程实践总结&个人技术博客
    个人作业——软件评测
    结对第二次作业——某次疫情统计可视化的实现
    结对第一次—疫情统计可视化(原型设计)
    软工实践寒假作业(2/2)
    软工实践寒假作业(1/2)
    个人技术总结 (vex-table)
    个人作业——软件工程实践总结&个人技术博客
    个人作业——软件评测
    结对第二次作业——疫情统计可视化的实现
  • 原文地址:https://www.cnblogs.com/josie-xu/p/10636710.html
Copyright © 2011-2022 走看看