gpt4 book ai didi

regex - 这个 BASH 正则表达式有什么问题

转载 作者:行者123 更新时间:2023-11-29 09:37:02 25 4
gpt4 key购买 nike

$ reg='(\.js)|(\.txt)|(\.html)$'
$ [[ 'flight_query.jsp' =~ $reg ]]
$ echo $?
0

*.jsp不应该根据正则表达式进行匹配,但实际上并没有。

有什么建议吗?

最佳答案

一条有用的评论被删除了。该评论表明运算符优先级是正则表达式通过的原因。他建议使用以下正则表达式作为解决方法。

$ reg='(\.js|\.txt|\.html)$'
$ if [[ 'flight_query.jsp' =~ $reg ]]; then echo 'matches'; else echo "doesn't match"; fi
doesn't match
$ if [[ 'flight_query.js' =~ $reg ]]; then echo 'matches'; else echo "doesn't match"; fi
matches

此正则表达式也适用于(\.js$)|(\.txt$)|(\.html$)

关于regex - 这个 BASH 正则表达式有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10680127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com