gpt4 book ai didi

java - 在 Datastore Google App 引擎的 endpint 类中使用正则表达式或模式匹配

转载 作者:行者123 更新时间:2023-11-30 02:56:43 24 4
gpt4 key购买 nike

在我的 App Engine Java 应用程序中,我想在数据存储区查询中使用 RegEx 来检查我的数据库字段之一中的前缀。我有一个存储 "UserName"的列。现在我想实现“搜索用户”功能。为此,我将不得不使用正则表达式来通过某些特定的前缀值搜索用户。我提到了 pattern in Google App engine链接。我想完全按照此链接中的描述进行操作。因为他们已经将 Gqlquery 与 python 一起使用,但我想在 JAVA 应用程序引擎应用程序中实现它。此外,我在我的 android 客户端中使用这个应用程序引擎应用程序。请任何人帮助我在 DataStore 上实现正则表达式。谢谢。

最佳答案

引用“GQL kinda like”查询的 Python 解决方法,具有低级数据存储 API 的 Java 实现应如下所示:

// From user input
String usernamePrefix = "XX";

Filter usernameGreaterThanPrefixFilter =
new FilterPredicate("username",
FilterOperator.GREATER_THAN_OR_EQUAL,
usernamePrefix);

Filter usernameLessThanLargestPossibleFilter =
new FilterPredicate("username",
FilterOperator.LESS_THAN,
usernamePrefix + "\ufffd");

Filter usernameKindaLikeFilter =
CompositeFilterOperator.and(usernameGreaterThanPrefixFilter, usernameLessThanLargestPossibleFilter);

Query q = new Query("User").setFilter(usernameKindaLikeFilter);

虽然我从来没有测试过这个,如果它有效,我会学到一些东西,谢谢你。

如果它不起作用,您始终可以在每个实体上存储固定长度的“userPrefix”属性,这将是用户名的子字符串。然后,您可以使用 FilterOperator.EQUAL 相等过滤器查询 userPrefix 属性。

关于java - 在 Datastore Google App 引擎的 endpint 类中使用正则表达式或模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23149036/

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