我想从文件中获取子字符串,但只能从前面没有感叹号的行(这是 Fortran 中的注释符号)。我更喜欢使用 grep (但不限于)。例如:
infile.txt:
calib_ss/baseline.txt
!calib_ss/base_sharpe.txt
期望的结果:
baseline
我做到了这一点:
grep -Po "(?<=/)[^/.]*(?=\.)" infile.txt
返回
baseline
base_sharpe
排除以 ! 开头的行 我想将表达式与
^[^\!]
但我不管理。提前致谢!