1

我有一个文件中定义的句子列表。我想根据文件中定义的句子列表向 GUI 的用户提出一个自动完成功能。

如果我在文件中定义的句子是字符串,我会在文件上循环并检查每个字符串是否以用户开始键入的内容开头。

但是文件中的句子是正则表达式,以避免语法错误,例如(“a”/“an”)。

一个具体的例子:在我的文件中,我有列表

  • [Tt]这里(是一个|是)汽车产品吗?
  • [Tt]这里(是?|是)空气产品?

用户开始写“有”

我想回到他身边

  • 有车产品
  • 有空气产品

除了从正则表达式创建所有可能的字符串之外,我不知道如何实现这一点。欢迎任何想法。

4

1 回答 1

0

很难确定所有可能匹配正则表达式的字符串。尤其是你似乎允许的。

[Tt]here (is an?|are) air products?

可能

There is an air product
There is an air products
There is a air product
There is a air products
There are air product
There are air products

加上所有的变化there

我建议您使用不同的格式,因为您的正则表达式似乎可以过滤无效响应,但不仅仅定义有效响应。

于 2012-09-10T09:02:39.257 回答