我正在使用<regex.h>
并尝试为.so
名称编写正则表达式,包括libmath.so.01
等名称。
我可以使用更清洁的正则表达式吗?我出来的是:
"^lib[[:alnum:],[:punct:]]*[.]so[[:alnum:],[:punct:],.]*$"
答案 0 :(得分:1)
目前还不清楚要捕获的文件名的哪一部分,所以我制作了多个版本:
(^lib.*?\.so(?:$|.\d+))
匹配以lib开头并以.so或.so结尾的字符串。接着是一个数字。并捕获文件名。
\blib\w*?\.so(?:$|.\d+)\b
匹配libSomthing1.so或libSomthing1.so.01中的字符串。并没有捕获任何东西。