【发布时间】:2019-04-20 20:01:22
【问题描述】:
我无法在我的 bash 脚本中应用我测试过的正则表达式和分组。将正则表达式应用于变量分组的正确 bash 语法是什么?
我用正则表达式测试器测试了我的正则表达式并工作了。但我仍然无法用 bash 做到这一点。现在我或多或少地了解了正则表达式的工作原理,但我仍然需要知道它在脚本中的应用方式。
read_line="1- https://www.youtube.com/watch?time_continue=4&v=wgG6xlQ1jx8 ==> movie name 1"
url=[[ "$read_line" =~ \d.*?(https.*?)==]] && echo "${BASH_REMATCH[1]}" #This syntax I copied from here.
folder_name=[[ "$read_line" =~ ==>\s+(\w+.*) ]] && echo "${BASH_REMATCH[1]}"
实际结果应该是:
url : https://www.youtube.com/watch?time_continue=4&v=wgG6xlQ1jx8
folder_name: movie name 1
【问题讨论】: