gpt4 book ai didi

java - 验证正则表达式 : Make sure it will match at least two characters

转载 作者:行者123 更新时间:2023-11-30 04:39:27 24 4
gpt4 key购买 nike

我正在开发一款允许用户输入正则表达式的 Android 应用程序。我将使用正则表达式查询数据库 ( MOTL ),但我不想列出一个巨大的列表(例如,如果用户搜索“.”以获取每个 MtG 卡的每个版本存在)。

任何魔法卡的最短名称都是“Ow”,因此我需要允许搜索两个字符长(例如,“^Ow$”)。我希望能够验证输入到文本字段中的正则表达式,以确保它在我进行查询后至少匹配两个字符。例如,搜索“Ac”可以,搜索“A”则不行。 “[A-D][e-g]+ ”可以,“[F-M]* ”不行。

解决此问题的最佳方法是什么?我正在考虑遍历输入,为保证匹配字符的每个正则表达式段(单独的字符、字符类和捕获组,或者后面跟有 +{n,m} 的字符)和 +0 计算 +1对于可能不匹配某些内容的段(字符、字符类和捕获组后跟 *{0,n})。

这个解决方案行得通吗?有没有更好的办法?这是不是在浪费时间,因为大多数用户只会键入他们面前卡片的部分或全部名称?

最佳答案

您最好将用户输入视为文字但带有“通配符”字符(例如 *),这样他们就不必担心正则表达式的细节,您也不必担心必须直接解决这个问题!

例如,您的用户可以输入“force of *”,它将匹配“Force of Will”、“Force of Nature”等。这样您就可以接受他们的输入并替换\*.* 并使用您构建的正则表达式,而不是担心清理他们的输入。

关于java - 验证正则表达式 : Make sure it will match at least two characters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6259363/

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