regex 如何匹配正确的日期格式?

voj3qocg  于 2023-08-08  发布在  其他
关注(0)|答案(1)|浏览(149)

如何使用正则表达式匹配“Test_yyyy_mm_dd.txt”格式的行?

Test_1_1999_06_17.txt
Test_2_2003_11_20.txt
Test_2023_08_08.txt
Test_2022_08_23.txt
Test_2020_05_14.txt

字符串
我想要的是:

Test_2023_08_08.txt
Test_2022_08_23.txt
Test_2020_05_14.txt

7rtdyuoh

7rtdyuoh1#

简单grep模式:

echo 'Test_1_1999_06_17.txt
Test_2_2003_11_20.txt
Test_2023_08_08.txt
Test_2022_08_23.txt
Test_2020_05_14.txt' | grep  -e '^Test_[0-9]\{4\}_[0-9][0-9]_[0-9][0-9]\.txt$'

字符串
。产生

Test_2023_08_08.txt
Test_2022_08_23.txt
Test_2020_05_14.txt


该模式将匹配以字符串“Test_”开头,后跟四位数字、一个下划线、两位数字、另一个下划线、两个附加数字和一个“.txt”结尾的行。
请注意,这绝不是一个日期验证机制,也就是说,它还将匹配无效日期,如“Test_0099_21_99.txt”。
希望能帮上忙。

相关问题