R语言【cli】——ansi_substr():ANSI彩色字符串的子字符串

发布时间:2024年01月22日

Package?cli?version 3.6.0


Description

这是base::substr()的颜色感知副本。它的工作原理与原来的完全相同,但保留了子字符串中的颜色。在计算字符串中的位置时,忽略ANSI转义序列。


Usage

ansi_substr(x, start, stop)

Arguments

参数【x】:字符向量,可能是ANSI样式的,或者是强制转换为字符的向量。

参数【start】:起始索引或索引,循环以匹配参数【x】的长度。

参数【stop】:结束索引或索引,循环以匹配参数【x】的长度。


Value

长度与参数【x】相同的字符向量,包含请求的子字符串。ANSI样式被保留。


Examples

> str <- paste(
+     col_red("red"),
+     "default",
+     col_green("green")
+ )
> cat(str, "\n")
red default green 
> cat(ansi_substr(str, 1, 5), "\n")
red d 
> cat(ansi_substr(str, 1, 15), "\n")
red default gre 
> cat(ansi_substr(str, 3, 7), "\n")
d def 
> substr(ansi_strip(str), 1, 5)
[1] "red d"
> substr(ansi_strip(str), 1, 15)
[1] "red default gre"
> substr(ansi_strip(str), 3, 7)
[1] "d def"
> str2 <- paste(
+     "another",
+     col_red("multi-", style_underline("style")),
+     "text"
+ )
> cat(str2, "\n")
another multi-style text 
> cat(ansi_substr(c(str, str2), c(3,5), c(7, 18)), sep = "\n")
d def
her multi-styl
> substr(ansi_strip(c(str, str2)), c(3,5), c(7, 18))
[1] "d def"          "her multi-styl"

文章来源:https://blog.csdn.net/whitedrogen/article/details/135726475
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。