regex - Golang-使用多个复杂的正则表达式模式扫描字符串

标签 regex go

我正在尝试golang的regexp库来测试正则表达式。基本上,我的目标是使用给定的正则表达式模式列表扫描给定的文件名列表。我这样做是为了查看文件名是否匹配特定的模式(只有1个字母或数字的文件/没有扩展名的文件等)。

我查看了regexp库,发现Compile函数只能采用1个模式,并且只能返回1个regexp对象。对于我来说,这是行不通的,因为我有多个模式的列表。

还有MatchString函数,我可以使用它以给定的模式一次扫描一个文件名。但是像文档中所述的那样,它不支持复杂的模式。

有什么办法可以在代码开头提供正则表达式模式列表,并获得regexp对象,可以用来扫描整个程序的文件名列表吗?

最佳答案

除非有某些固有的原因需要使用Go来解决此问题,否则在使用正则表达式时Go会非常糟糕。另请:https://github.com/golang/go/issues/26623

过去,当我绝对需要执行正则表达式时,我会使用Perl或PyPy设置某种服务器,当我需要处理和使用正则表达式时,可以通过某种端点来访问它。

关于regex - Golang-使用多个复杂的正则表达式模式扫描字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61855065/

相关文章:

javascript - 如果使用单个正则表达式以特定字母开头和结尾,如何替换

regex - 什么匹配这个正则表达式 : qr/(? !)/;

heroku - 在 Heroku 上转到 'present'?

c++ - 通过 SWIG 从 C++ 调用 Go 回调函数

tcp 客户端未到达某些语句就结束

java - 安卓/Java : Check if url is valid youtube url

java正则表达式将一个属性列表从一个sql查询拆分成一个字符串[] of attrs

go - 如何在父子顺序中构造yaml文件?

json - 将 JSON 成员字符串转换为 JSON 对象

php - 在 PHP 中替换 UTF-8 KeyCap 数字字符