我对正则表达式并不熟悉,我想通过使用正则表达式进行以下比较。
源词是:Hello124
在列表中,我有以下字符串
Hello12
您好
赫尔
Hel123
她的
我想要的输出是(Hello12,Hello,Hel)。即从源sting,我将逐个减少最后一个字符,并在列表中找到匹配。请告诉我,是否可以使用正则表达式来优化此功能?
我正在使用带有stl :: tr1库的C ++。
答案 0 :(得分:1)
你可以试试这个:
^H(?:e(?:l(?:l(?:o(?:1(?:24?)?)?)?)?)?)?$
但在大多数语言中,只评估每个单词的query.StartsWith(word)
会更容易。
答案 1 :(得分:0)
当然,您可以使用正则表达式解决此问题,例如使用以下内容:h|he|hel|hell|hello|hello1|hello12|hello124
。
然而,这不是很好并且有点矫枉过正。据我所知,支持正则表达式的每种语言也支持查询子字符串(如果找到你的字符串,你可能想查看here。)