前提是这种刺痛是动态的。如果是Domain_1234_20180821230101.dat
那么我想要1234_20180821
。我怎样才能做到这一点?
即,当 Domain_12_20180821230101.dat
那么我想要输出为 12_20180821
最佳答案
适用于您给出的示例的原始解决方案是:
grep -oP '[0-9]+_[0-9]{8}' <<< "$string"
这将提取由可变长度数字组成的任何子字符串,后跟下划线,后跟 8 位数字(如果存在),否则不返回任何内容。
您可以在 grep --help
和 https://www.regular-expressions.info/tutorial.html 下找到更多信息来帮助您理解此命令,并根据需要调整它以满足您的要求。 .
关于linux - 如何在 Bash 中将字符串 ="Domain_12345_20180821230101.dat"切成 12345_20180821,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52720050/