子串匹配正则表达式

时间:2011-10-18 19:37:47

标签: regex

我对正则表达式并不熟悉,我想通过使用正则表达式进行以下比较。

源词是:Hello124

在列表中,我有以下字符串

Hello12

您好

赫尔

Hel123

她的

我想要的输出是(Hello12,Hello,Hel)。即从源sting,我将逐个减少最后一个字符,并在列表中找到匹配。请告诉我,是否可以使用正则表达式来优化此功能?

我正在使用带有stl :: tr1库的C ++。

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

^H(?:e(?:l(?:l(?:o(?:1(?:24?)?)?)?)?)?)?$

但在大多数语言中,只评估每个单词的query.StartsWith(word)会更容易。

答案 1 :(得分:0)

当然,您可以使用正则表达式解决此问题,例如使用以下内容:h|he|hel|hell|hello|hello1|hello12|hello124

然而,这不是很好并且有点矫枉过正。据我所知,支持正则表达式的每种语言也支持查询子字符串(如果找到你的字符串,你可能想查看here。)