正则表达式跳过第一个字符,然后匹配查询中的所有单词

问题描述

我在 HBase 中有一个字符串列,它是通过 OrderedBytes.encodeString 编码的。它在开头添加一个字符 0x34,并在末尾附加一个 0x00。 dst.put(0x34); dst.put(val.getBytes(UTF8)); dst.put(0x00);

这让我无法直接应用 RegexStringComparator。 有什么办法可以跳过第一个字符并在其余字符上应用 RegexStringComparator 吗?

例如,我想检查字符串是否包含以下所有单词: 肉 蔬菜 面条 正则表达式是 ^(?=.*\bmeat\b)(?=.*\bvegetable\b)(?=.*\bnoodle\b).+

我尝试添加 ^.{1} 以跳过开头的第一个字符。但是,它没有按预期工作。

^.{1}\K(?=.*\bmeat\b)(?=.*\bvegetable\b)(?=.*\bnoodle\b).+

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)