如何awk
区分使用BRE
与使用ERE
?因为sed
有一个-E
选项可以使用。
主页
/
user-506878
Veak's questions
Veak
Asked:
2023-01-30 13:52:17 +0800 CST
我使用以下regex condition
,^
和$
来表示给定模式的开始和结束。
if [[ "$1" =~ ^[[:digit:]]+$ ]]; then
我也写了等同的glob condition
if [[ "$1" == ^+([[:digit:]])$ ]]; then
因为我看到有些人不使用^
and$
就走了,为什么要消除它们?
Veak
Asked:
2023-01-30 12:55:21 +0800 CST
Bash
有两种类型的模式匹配,Glob
和Regex
. 一般使用规则似乎是 1)glob
搜索文件名更简单 2)regex
用于搜索文本。
Glob
在前面regex
使用元字符,在结尾使用元字符pattern
。
Glob Regex
?(pattern) (pattern)?
*(pattern) (pattern)*
+(pattern) (pattern)+
因此,我很难理解文件如何与通配符(例如*.sh
)匹配。通配符与 glob 模式有什么不同吗?据我所知,搜索模式*.sh
不包含匹配 . 之后的任何字符的元字符*
。
Veak
Asked:
2023-01-29 19:30:20 +0800 CST
这是测试数字的正确方法吗,用双[[]]
引号:digit:
和单引号包围正则表达式?
if [[ "$var" =~ '^[[:digit:]]+$' ]]; then
使用以下裁剪图像的 bash 命令,我想使用单行命令从02
到循环。18
convert TOS28_Page_02.jpg -crop 990x1500+0+0 TOS28_Page_02a.x.jpg
Veak
Asked:
2021-12-24 09:22:48 +0800 CST
我正在尝试使用 glob 模式进行匹配。但是在使用的时候就失败了
myfun 12
。
dgt='^+([0123456789])$'
[[ "$1" == $dgt ]] && echo "SUCCESS" || echo "FAILURE"
Veak
Asked:
2021-12-20 12:46:18 +0800 CST