用于具有相同开始和顺序的子字符串的正则表达式

我有一个字符串“阿伯德夫格”。我想匹配任何等效于删除末尾字符的子字符串。因此,除了匹配“abcdefg”之外,字符串“abc”、“a”和“abcd”都应该匹配。

使用将起作用,但它本质上只是一个字符串列表。a|ab|abc|abcd|abcde|abcdef|abcdefg

有没有更节省空间的方法来做到这一点?

此外,我不能使用前瞻/前瞻,因为它们在Go中不受支持。


ITMISS
浏览 114回答 2
2回答

慕哥9229398

我会手动编写支票代码。正则表达式并不是一个很好的工具。但是你知道,如果你坚持...a(b(c(d(e(f(g)?)?)?)?)?)?

偶然的你

您实际上希望使用字符串。具有前缀,用于检查字符串是否为 的前缀。您还需要确保字符串为非空,因为空字符串始终是有效前缀:"abcdefg"match := s != "" && strings.HasPrefix("abcdefg", s)这将比使用正则表达式快得多。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go