Systemverilog 中定义了string 类型,常见的默认的方法有
len()
getc()
putc
toupper()
tolower()
compare()
substr()
这些方法可以满足日常很多的应用,但是相对于perl,python,systemverilog 内建的string 方法比较少,同时缺少regular expresssion等常见的应用方法。因此我们可以在systemverilog lib的基础上开发自己的string方法,这里我们介绍svlib这个开源lib
svlib里面有大量的string 方法,这里先介绍class Str
在使用Str 时,必须使用内建的静态create方法创建,不可以使用new()[UVM中使用factory创建]
Str中有一些重要的方法,下面简单罗列一下
create(string s="")//创建Str object,并给Str.value赋初始值
get()//获取Str.value
copy()//深复制
len()//获取Str.value的len
set(string s)//重置Str.value
appent(string s)//拼接Str.value
first(string substr,int ignore=0)//获取substr首次在Str.value出现的Index
split(string splitset"")//python中的split操作
sjoin(qs strings)//python中的join操作
range(int p,int n)//切片操作
replease(*)//替换操作
trim(); //删空白符
strip(); //删给定字符
pad(); //加空白符
module svlib_string;