开始我有一系列的条目,可以通过此字符串来表示零个或一个位置:正则表达式:捕捉字符模式从字符串
my_string="-D-K4_NNNN_M116_R1_001.gz _D-K4_NNNN_M56_R1_001.gz R-K4_NNNN_KQ9_R1_001.gz D-K4_NNNN_M987_R1_001.gz _R-K4_NNNN_M987_R1_001.gz"
对于每个条目,我需要返回是否它以'R'或'D'开头。为了做到这一点,我需要忽略它之前的任何角色。所以,我写这个正则表达式:
for i in $my_string; do echo $i | grep -E -o "^*?[RD]"; done
然而,这仅仅是返回R
或D
对于不通过字符开头的条目。
我该如何得到这个正则表达式在任何情况下返回R
或D
的值,无论前面有没有字符?请记住,唯一可以“硬编码”到表达式中的是要匹配的模式。
你能解释这个'sed'命令的每个部分在做什么吗? 。 – user5359531
肯定的是,更新的回答更多细节 –