我必须使用正则表达式对字符串进行精确匹配。我必须意识到这种模式:toCheck 必须以 2 次出现的 $str1 开始,最多出现 1 次 $str2。如果 toCheck 匹配模式,我必须在输出中写入 $toCheck:success,否则 $toCheck:failed。
我写了这个正则表达式:
regex="$1($1)+$2"
Run Code Online (Sandbox Code Playgroud)
使用站点 regexr.com,我插入了例如:
regex="lo(lo)ba"
toCheck="loloba"
Run Code Online (Sandbox Code Playgroud)
这是一个成功。
在 regerx.com 上,这场比赛直到最后一场比赛:
toCheck="lolobaba"
Run Code Online (Sandbox Code Playgroud)
但是,在我的 bash 代码上,它是成功的。
这是完整的代码:
toCheck="lolobaba"
regex="lo(lo)+ba"
if [[ $toCheck =~ $regex ]]; then
echo "$toCheck:success" > output
else
echo "$toCheck:failed" > output
fi
Run Code Online (Sandbox Code Playgroud)
所以,问题是:如何在字符串和正则表达式之间进行精确匹配?
我想在我的笔记本电脑上安装 windows 7,所以我使用 Microsoft 的工具来刻录 iso,但由于某种原因,它似乎无法设置可启动标志。我无法重试 atm 进程,但我有带有闪存 ISO 的 USB。我所需要的只是如何从 USB 上的 Windows 系统设置可引导标志。我没有 Linux atm。谢谢
我在目录中有一个文件列表,我想制作一个 bash 脚本,该脚本使用正则表达式来检查其中的每个文件名是否具有以下语法:
xxxx_xxxx_xx_xx
Run Code Online (Sandbox Code Playgroud)
其中 x 是数字。
编辑:我只需要正则表达式