【发布时间】:2011-10-10 15:01:06
【问题描述】:
我们知道 Bash 不使用正则表达式来匹配文件名。例如:
*.dat 将匹配所有带有 dat 扩展名的文件名。但是,正则表达式形式的相同模式将是:.*\.dat
我的问题是如何采用 Bash 样式的模式并将其转换为匹配相同文件名的有效正则表达式。
为简单起见,让我们忽略各种 Bash 扩展,假设 Bash not 对待 。 .. 和 / 分开。
【问题讨论】:
-
你想转换成什么样的正则表达式?
-
如果有的话,bash 版本更接近 ASCII \ {'*'} 上的“真实”正则表达式,而不是您提供的“真实”事物(perl?)。
标签: regex bash pattern-matching