用于从long String中提取摘录的正则表达式

时间:2014-07-14 12:16:03

标签: regex ios7 nsstring

我想使用正则表达式

从长字符串中提取摘录

示例字符串:""今天以1-0击败阿根廷赢得世界杯的德国队有可能最终成为经济增长方面的输家吗? ""

要搜索的字符串:"那"

正则表达式的预期结果

"可能是德国"

"第二杯,将结束"

我想从搜索到的字符串出现的前后的-9和+9字符中搜索字符串中的所需文本。搜索字符串可以在给定字符串中多次出现。

我正在开发iOS应用 使用iOS 7。

到目前为止,我已经用我对调节器表达式的一点知识创建了这个表达式但是却无法从中获得所需的结果

 " (.){0,9} (that) {0,9} "

2 个答案:

答案 0 :(得分:1)

删除正则表达式中的空格。如果你想捕获匹配的那些。然后将模式包含在捕获组中(即()),

.{9}that.{9}

OR

(?:.{9}|.{0,9})that(?:.{9}|.{0,9})

DEMO

将前后字符设为可选字符,以匹配看起来像that will change history

的行

答案 1 :(得分:0)

好吧,在你的表达中,你只是错过了第二个“。”也许是“?”对于空间。

.{0,9} ?that ?.{0,9}

试试。

如果需要,您可以添加()以制作群组。我加了“?”使其符合你的另一个例子:

  

“这将改变历史”