Tcl regexp和regsub

2024-03-02 04:28
文章标签 regexp tcl regsub

本文主要是介绍Tcl regexp和regsub,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.regexp

regexp 是用于判断正则表达式是否全部或者部分匹配目标字符串的命令,匹配返回1,否则返回0
regexp 正则表达式 string

2.regsub

regsub 是用于对目标字符串中满足正则表达式的部分进行替换,并将替换后的结果存入新的变量中,匹配成功返回1,否则返回0
regsub 正则表达式 string 替换
regsub there "They live there lives" their
set libcell_lists [lsort -increasing [get_object design.insts.libcell.nameFullHier -u]]
set cell_number [get_object design.cntInsts]
set libcell_lists_number [llength $libcell_lists]echo "The total numbet of cell types are $libcell_lists_number" > libcell_count.txt
echo "The total number of cell are $cell_number" >> libcell_count.txt
echo "The total number of cell types are $libcell_lists_number" > libcell_type_count.txt
echo "The total number of cell are $cell_number" >> libcell_type_count.txtset cell_number [expr $cell_number * 1.0]foreach cell $libcell_lists {set inst_number [llength [get_object design.insts.libcell ".nameFullHier == $cell"]]set inst_precent [expr $inst_number / $cell_number * 100]echo "$cell : $inst_number $inst_precent%" >> libcell_count.txt
}set cell_type_list ""
foreach cell $libcell_lists {if {[regexp {D0P} $cell] | [regexp {D1p} $cell]} {set cell_new [regsub {D([0-9][A-Z][0-9]BWP)} $cell "D*BWP"]} else {set cell_new [regsub {D([0-9]+)BWP} $cell "D*BWP"]}lappend cell_type_list $cell_new
}set cell_type_list_1 [lsort -unique $cell_type_list]foreach cell $cell_type_list_1 {echo "$cell"set inst_number [llength [get_object sesign.insts.libcell ".nameFullHier =~ $cell"]]set inst_precent [expr $inst_number / $cell_number * 100]echo "$cell : $inst_number $inst_precent%" >> libcell_type_count.txt
}

这篇关于Tcl regexp和regsub的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/764900

相关文章

【深度分析】报错:com.sun.org.apache.regexp.internal does not exist

文章目录 问题分析思路这个类在哪里?本地能跑,Jenkins 上不能跑?JDK 把这个 package 删掉了?JDK 啥时候把 package 删掉了?翻阅 JDK8 Release Notes查阅 Jakarta-regexp查阅 bug 说明 解决参考 问题 项目本地 mvn clean install 打包都正常,但是到 jenkins 中打包就会报错。 报错信息

【JavaScript】标准库:RegExp对象

文章目录 1 概述2 实例属性3 实例方法3.1 RegExp.prototype.test()3.2 RegExp.prototype.exec() 4 字符串的实例方法4.1 String.prototype.match()4.2 String.prototype.search()4.3 String.prototype.replace()4.4 String.prototype.spl

HDP 2.6.3.0 ambari安装 :Cannot match package for regexp name XX_${stack_version}错误

博主在Centos7.5 上进行HDP 2.6.3.0的安装,在安装过程中: 报错: :Cannot match package for regexp name xx_${stack_version} 如图: 博主这里以hbase为例,其他的可能是hadoop、pig等等。 参考了以下两篇文章的方法: 第一: https://blog.csdn.net/weixin_4215168

Elasticsearch wildcard 和 regexp 查询:使用通配符和正则表达式

在 Elasticsearch 中,当我们需要执行基于字符串模式的搜索时,wildcard 和 regexp 查询就派上了用场。这些查询类型允许我们根据通配符和正则表达式来匹配文档中的字段值。在本文中,我们将详细讨论这两种查询的用途、语法以及最佳实践。 一、wildcard 查询 wildcard 查询允许我们使用通配符 ?(匹配单个字符)和 *(匹配零个或多个字符)来执行基于模式的搜索。这对

JavaScript各种基础对象:(8)RegExp(正则)对象

目录 1 RegExp(正则表达式)概述 1.1 新建正则表达:一种是使用字面量,以斜杠表示开始和结束 1.2 新建正则表达: 一种是使用RegExp构造函数 1.2.1 RegExp构造函数还可以接受第二个参数,表示修饰符。 2 正则对象的属性和方法 2.1 属性 2.1.1 一类是修饰符相关 2.1.2 另一类是与修饰符无关的属性 2.2 方法 2.2.1 test()

RegExp正则匹配模式汇总

正则表达式提供另一种强大的文本搜索和处理方式,对于正则表达式,不同语言有着不同的实现,JavaScript采用的Perl5的语法。对于极少数匹配模式是简单的全字符文本的情况,我们往往会采用indexOf这样的方法,但是多数情况下,匹配模式往往都更为复杂。 1、语法   1)在JavaScript中我们可以采用内建构造器RegExp()来创建正则表达式的对象;      var re = n

在Vivado下利用Tcl编辑综合后的网表

http://www.iot-online.com/jishuwenku/2017/0602/69596.html

Quartus TCL

https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/ug/ug-qpp-scripting.pdf https://www.intel.com/content/www/us/en/programmable/documentation/sbv1513989262284.html 使用JTAG模式下载到F

FPGA代码移植案例分析:Tcl Scripts后提示找不到 vo 文件,Supra软件报错

FPGA代码移植案例分析:Tcl Scripts后提示找不到 vo 文件,Supra软件报错 客户工程师已经运行Tcl Scripts,正常没出错就会产生这个vo文件。工程师试了两次 运行之后点的next的,还是出现同样的错误。 建议客户在原quartus工程里重新编译一下,运行Tools ----> Tcl Scripts. 结果重新跑流程还是一样的错误! 客户使用AGM超过2年,以前是

SQL常用语句--模糊查询REGEXP

REGEXP 是正则表达式(regular expression) 的缩写 . 正则表达式在搜索字符串时非常强大. 它允许我们搜索更复杂的模式。 模糊匹配 1)包含特定字符串 SELECT *FROM customersWHERE last_name REGEXP 'field'  -- 查找名字中带field的记录 2)我们可以用 ‘^’ 表示字符串的开头, SEL