- 博客(93)
- 资源 (3)
- 收藏
- 关注
转载 [转载]Python正则表达式匹配反斜杠'\'问题
在学习Python正则式的过程中,有一个问题一直困扰我,如何去匹配一个反斜杠(即“\”)?一、引入在学习了Python特殊字符和原始字符串之后,我觉得答案应该是这样的:1)普通字符串:'\\'2)原始字符串:r'\'但事实上在提取诸如“3\8”反斜杠之前的数字时,我屡次碰壁,始终得不到结果。最终发现自己理解错了,原来原始字符串和“正则转义”没有一点关系;下面详细谈一谈。二、字...
2019-04-29 16:09:47 423
转载 gvim的标签操作
vim-tabe多标签切换新建标签页使用:tabe命令和文件名参数,可以在新标签页中打开指定的文件。也可以使用:tabnew命令,在新标签页中编辑新的文件。命令:tab split将在新标签页中,打开当前缓冲区中的文件。命令:tabf允许你在当前目录搜索文件,并在新标签页中打开。比如我想打开当前目录下的img.txt文件,那么就可以使用:tabf img.*命令。请注意,此命令只能打开...
2019-03-27 16:28:33 2009
转载 clock tree exceptions 讲解
数字IC后端设计实现之时钟树例外(Exclude Pin、Stop Pin、Non_stop Pin、Float Pin)全面揭秘 吾爱IC社区小编之前提到过时钟树综合(Clock tree synthesis)是数字IC后端设计实现中最难的一个环节,如果你能够处理超级复杂时钟结构的时钟树综合,那么你就是数字后端设计实现的大师了。今天为大家分享一下CTS阶段的一些时钟树例外的Pin(引脚例...
2019-01-17 09:48:36 5472
转载 vim 正则表达式 很强大
毋庸多言,在vim中正则表达式得到了十分广泛的应用。 最常用的 / 和 :s 命令中,正则表达式都是不可或缺的。 下面对vim中的正则表达式的一些难点进行说明。关于magicvim中有个magic的设定。设定方法为::set magic " 设置magic :set nomagic " 取消magic :h magic " 查看帮助vim毕竟是个编辑器,正则表达式中包含的大量元字符...
2018-12-19 16:06:01 275
转载 vim 匹配查找指定位置的数字,并将数字做运算后赋值
举例,以下文本中有个DSC开头的以数字命名的jpg文件,我想修改文件名为在原来的基础上加上32,比如第一行中的字符改为:DSC00099.JPG在vim中输入::%s/DSC[0]\+\(\d\+\)/\=printf("DSC%05d",submatch(1)+32)/详解:\(\)之间的内容是与submatch(1)中对应的内容,也就是说,submatch(1)代表了\(...
2018-12-19 16:03:59 3071
转载 vi操作窍门
vim 正则表达式 很强大转自博客http://qianjigui.javaeye.com/blog/368449毋庸多言,在vim中正则表达式得到了十分广泛的应用。 最常用的 / 和 :s 命令中,正则表达式都是不可或缺的。 下面对vim中的正则表达式的一些难点进行说明。关于magicvim中有个magic的设定。设定方法为::set ma
2017-11-28 11:19:04 312
转载 关于parallel_case和full_case的使用
在写RTL的时候,常常会用到CASE语句,但是case语句实际综合后,产生的逻辑变化比较多,parallel_case和full_case主要就是用来控制综合器把case语句综合成什么硬件逻辑。首先说说parallel_case。例子一:case (CASE_SIGNAL)begin CASE1: A = B; CASE2: A = C;
2017-05-31 12:45:17 597
转载 FloorPlan 经验总结
[讨论] IC layout FloorPlan 经验总结(摘录)布局前的准备:[52RD.com]1 查看捕捉点设置是否正确.08工艺为0.1,06工艺为0.05,05工艺为0.025.[52RD.com]2 Cell名称不能以数字开头.否则无法做DRACULA检查.[52RD.com]3 布局前考虑好出PIN的方向和位置[52RD.com]4 布局前分析电路,完成同一功
2016-12-30 17:01:44 12222
转载 数字后端之我见
如果您是初学者,建议先搜索相关的资料,读读其他人的帖子,一些基本概念在那里都已经讨论过了。如果您已经有2年以上的实战经验,下面这些雕虫小技就不太值得您去浪费时间了。先说说作为一个有经验的后端(暫不包括DFT工程师和layout工程师)工程师,需要掌握哪些知识4个级别: 1)知道一些基本概念, 2)简单地掌握这门技术, 3)熟练 4)精通
2016-12-17 10:40:10 14139
转载 异步复位信号的 recovery和removal
简而言之,DFF的复位置位信号不要在clk的跳变沿附近变化,而是要远离clk沿。一般逻辑对此时序不用关心,比如很多模块的操作流程是复位完了,才开启模块时钟,再启动模块工作。这种流程可以保证不会出现recovery和removal的问题,因为复位置起撤销时都没有时钟;即使操作流程保证不了,出现recovery和removal违例,由于模块此时都不会工作,也没什么问题。需要关心reco
2016-11-30 11:11:12 16971 2
转载 VIM mark功能
Vim 允许你在文本中放置自定义的标记。命令 "ma" 用 a 标记当前的光标位置。你可以在文本中使用 26 个标记(a到z)。这些标记是不可见的,只是一个由 Vim 记住的位置。要跳到一个你定义的标记,可以使用命令 `{mark},这里 {mark} 是指定义标记的那个字母。所以,移到标记a的命令是: `a命令 'mark(单引号加上一个标记)会移到标记所在行的
2016-04-11 12:49:12 822
转载 gvim 命令补充
刪除沒有內容的空行:g/^$/d刪除包含有空格組成的空行:g/^\s*$/d以空格或tab開頭到結尾的空行:g/^[ |\t]*$/d:%s/r//g 删除DOS方式的回车^M:%s= *$== 删除行尾空白:%s/^(.*)n1/1$/ 删除重复行:%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf:%s///又是删除多行注
2015-11-27 15:43:28 691
转载 verilog specify功能
specify block用来描述从源点(source:input/inout port)到终点(destination:output/inout port)的路径延时(path delay),由specify开始,到endspecify结束,并且只能在模块内部声明,具有精确性(accuracy)和模块性(modularity)的特点。specify block可以用来执行以下三个任务:一、描
2015-08-07 09:54:39 34618 1
原创 vim命令行指令
命令行指令:[:e +file name]:在当前窗口buffer中编辑新的文本。[:n, read file name]:将文本中的内容从第n行起复制到当前文本当前光标所在位置处。
2015-07-31 15:01:44 534
转载 VIM和shell的切换
本章深入讨论如何让其它程序跟 Vim 混用。或者从 Vim 内部执行别的程序,或者暂时先离开 Vim 而于执行了那个程序后再回来。而且,本章将进一步介绍如何记住 Vim 的当前0状态,并在以后把它还原回来。----挂起和恢复在图形化里面大概就没什么用了。(作用等同鼠标的最小化)简单的说一下:用CTRL-Z 挂起。这个动作把 Vim 停下来,并让你回到那个你启动 Vim 的命
2015-05-15 10:28:05 5127
转载 vim中执行shell命令小结
vim中执行shell命令,有以下几种形式1):!command不退出vim,并执行shell命令command,将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容例如:!ls -l特别的可以运行:!bash来启动一个bash shell并执行命令,不需要退出vim2):r !command将shell
2015-05-15 10:25:34 600
原创 VIM的高效率移动指令
VIM的高效率移动指令1、在插入模式之外基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面 VIM 就像一个“哑巴”编辑器一样。很多新手都会一直呆在插入模式里面,因为这样易于使用。但 VIM 的强大之处在于他的命令模式!你会发现,在你越来越了解 VIM 之后,你就会花越来越少的时间使用插入模式了。2、使用 h、j、k、l使用 VIM 高效率编辑的第一步,就是放弃使
2015-05-15 10:14:50 570
原创 UVM平台搭建
随笔:UVM平台.pdf (550.07 KB)下载次数: 852015-4-1 16:33下载消耗 资产 1 信元 下载支出 -1 信元 (贴出来的东西,图片显示不了,pdf是对应的详细教程)也许平台不是很难,但是网上没有UVM在VCS中的详细教程,但是对于初学者就是一道屏障,我探索了几天,下文将一步一步的举例子说明UVM+VCS+Verdi的liunx平台搭
2015-05-12 17:02:40 9888 3
转载 特殊的一些vi指令(快捷键)
这是一篇较全的vim命令。特记录下来,有稍作修改说明。摘http://hi.baidu.com/ui176/item/b00ae7c0eeaba52847d5c0c5Vim常用命令跳到指定的行号:在命令行下直接输入:行号比如跳到500行,输入:500即可整体缩进的操作:在命令行模式下,按住shift+v进入可视行选择状态,使用shift加上下
2015-04-24 15:03:07 1020
原创 vim/vim/vi常用命令
vim/vim/vi常用命令:其替换功能很好用,见 vim替换功能.html查找单词:/word,或 把光标移到那个单词下面使用*命令。Vim 会取得光标上的单词并把它作为被查找的字符串,而#则是反向查找。[、]:光标在空行之间上下跳移。x或Delete 表示 dl (删除当前光标下的字符)X 表示 dh (删除光标左边的字符)D 表示 d$ (删除到行尾)C 表示 c$ (修改到行尾)s
2014-09-26 17:56:01 456
原创 gvim 的单词边界匹配问题
转义的"尖括号" -- / -- 用于匹配单词边界尖括号必须被转义才含有特殊的含义, 否则它就表示尖括号的字面含义. "\" 完整匹配单词"the", 不会匹配"them","there", "other", 等等.
2014-09-10 16:52:00 1029
原创 perl环境中的变量内插的实现
变量内插的时候可以使用双引号""方式来实现。 @list=glob "test*.dat";foreach $ll(@list){ print("$ll\n"); `cp $ll "$ll"_bak`;} 上
2014-09-01 09:48:17 657
原创 特殊的gvim编辑指令
gvim编辑指令: :history 列出历史编辑命令(只是显示通过":"符号引用方式的命令) :ls 显示当前窗口所开启的所有buffer名 :b1/b2/b3… 进入buffer1/buffer2/buffer3编辑窗口 :cd ..进入上一级目录 :!ls 显示当前目录的内容(所有shell命令的引用
2014-09-01 09:45:50 798
原创 perl函数说明(gethostent)
gethostent sethostent STAYOPEN endhostent 这个函数遍历你的 /etc/hosts 文件并且每次返回一条记录。gethostent 的返回值是: ($name, $aliases, $addrtype, $length, @addrs)这里 @addrs 是一个裸地址的列表。在互联网域,每个地址(因历史原因)是四个字节长,可以用下面方法解
2014-09-01 09:30:03 381
原创 perl函数说明(gethostbyaddr)
gethostbyaddr ADDR, ADDRTYPE 这个函数把地址转换成名字(和改变地址)。ADDR 应该是一个封包的二进制网络地址,而 ADDRTYPE 实际上通常应该是 AF_INET(来自 Socket 模块)。其返回值在列表环境里是: ($name, $aliases, $addrtype, $length, @addrs) = gethostbyaddr
2014-09-01 09:28:23 539
原创 perl函数说明(getgrnam)
getgrnam NAME 这个函数通过组名字查找一条组文件记录。返回值在列表环境中是: ($name, $passwd, $gid, $members)这里 $members 包含一个用空格分隔的列表,该列表就是该组成员的登录名字。如果你想重复做这件事情,考虑用 getgrent 把数据缓冲到一个散列里面。在标量环境中,getggid 只返回组 ID。User::gr
2014-09-01 09:27:10 512
原创 gvim指令
gvim编辑指令: :history 列出历史编辑命令(只是显示通过":"符号引用方式的命令) :ls 显示当前窗口所开启的所有buffer名 :b1/b2/b3… 进入buffer1/buffer2/buffer3编辑窗口 :cd ..进入上一级目录 :!ls 显示当前目录的内容(所有shell命令的引用
2014-08-26 11:01:32 2129
转载 gvim 换行符替换
用 VIM 编辑文本文件,想在每一行的换行之前,添加一个字符,比如 “;”。想到替换命令::%s/\n/;\n/g结果总是出错。后来找到解决方案::%s/\n/;\r/g有人总结的结论:When searching: \n is newline, \r is CR (carriage return = Ctrl-M = ^M)
2014-07-25 09:58:38 3291
原创 perl函数说明(getgrgid )
getgrgid GID 这个函数通过组标识查找一条组文件记录。返回值在列表环境中是: ($name, $passwd, $gid, $members)这里 $members 包含一个用空格分隔的列表,该列表就是该组成员的登录名字。如果你想重复做这件事情,考虑用 getgrent 把数据缓冲到一个散列里面。在标量环境中,getggid 只返回组名字。User::gren
2014-07-14 17:44:25 447
原创 perl函数说明(getnetent)
getnetent setnetent STAYOPEN endnetent 这个函数遍历你的 /etc/networks 文件。其返回值在列表环境中是: ($name, $aliases, $addrtype, $net) = getnetent();在标量环境里,getnetent 只返回网络名字。Net::netent 模块支持一个通过名字访问这个函数的接口。参阅 get
2014-07-10 09:37:50 526
原创 perl函数说明(getnetbyname )
getnetbyname NAME 这个函数把一个网络名字转换成它对应的网络地址。其返回值在列表环境里是: ($name, $aliases, $addrtype, $net) = getnetbynaem("loopback");在标量环境里,getnetbyname 只返回网络地址。Net::netent 模块支持一个通过名字访问这个函数的接口。参阅 getnetbynam
2014-07-10 09:36:57 835
原创 perl函数说明(getnetbyaddr )
getnetbyaddr ADDR, ADDRTYPE 这个函数把一个网络地址转换成对应的网络名字。在列表环境中其返回值是: use Socket: ($naem, $aliases, $addrtype, $net) = getnetbyaddr(127, AF_INET);在标量环境中,getnetbyaddr 只返回网络名字。Net::netent 模块支持一个
2014-07-10 09:36:07 585
原创 perl函数说明(getpeername )
getpeername SOCKET 这个函数返回该 SOCKET 连接中对端的封包地址。比如: use Socket; $hersockaddr = getpeername SOCK; ($port, $heraddr) = sockaddr_in($hersockaddr); $herhostname = gethostbyaddr
2014-07-10 09:35:58 567
原创 perl函数说明(getlogin)
getlogin 如果有的话,这个函数返回当前登录名。在 Unix 系统上,它是从 utmp(5) 文件里读取的。如果它返回假,那么用 getpwuid 取代。比如: $login = getlogin() || (getpwuid($<)) [0] || "Intruder!!";
2014-07-10 09:35:11 1392
原创 perl函数说明(gethostbyname )
gethostbyname NAME 这个函数把一个网络主机名翻译成它的对应地址(以及其他名字)。其返回值在列表环境里是: ($name, $aliases, $addrtype, $length, @addrs) = gethostbyname ($remote_hostname);这里的 @addrs 是一个裸地址的列表。在互联网域,每个地址(因历史原因)是四个
2014-07-10 09:33:20 971
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人