gpt4 book ai didi

java - oracle regexp_like 函数在 java 中失败

转载 作者:行者123 更新时间:2023-11-30 02:15:16 26 4
gpt4 key购买 nike

我确实有一个查询需要使用 regex_like(user_id,'^.+EMP\d?$')。它在我的 SQLDeveloper 中工作得很好,并给了我想要的结果。

但是当我通过 java 中的 jdbcTemplate 触发此查询时,我收到编译时错误:无效的转义序列(有效的转义序列为\b\t\n\f\r\"\'\
\)
对于下面的行。

公共(public)静态最终字符串 USER_IDENTIFIER = '^.+EMP\d?$'

为了解决这个问题,我在正则表达式中添加了一个反斜杠,如下所示'^.+EMP\\d?$'。但这并没有给我想要的结果。事实上,这并没有给我任何结果。

我该如何解决这个问题?

任何线索都将不胜感激。

P.S:发布问题时存在一些问题,因为我添加正则表达式作为标签,所以无法添加它。

最佳答案

\d 是数字的字符类。试试这个怎么样?

'^.+EMP[0-9]?$'

此外,正则表达式匹配字符串中的任何位置,因此 ^.+ 相当多余。我猜这已经足够了:

'EMP[0-9]?$'

但这几乎肯定等同于你的表达:

'.EMP[0-9]?$'

如果您使用 . 来避免换行,那么(当然)您的原始内容是正确且简洁的。

关于java - oracle regexp_like 函数在 java 中失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48731651/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com