Regex 用于从长字符串中提取摘录的正则表达式
我想使用正则表达式从长字符串中提取摘录 示例字符串:“今天以1:0击败阿根廷赢得世界杯的德国,在经济增长方面是否可能以输家告终?“” 要搜索的字符串:“that” 正则表达式的预期结果 “可能是德国” “第三届世界杯,就要结束了” 我想从字符串中搜索所需的文本,从搜索字符串的前后位置分别搜索-9和+9个字符。搜索字符串可以在给定字符串中出现多次 我正在开发一个iOS应用程序 使用iOS 7 到目前为止,我在创建这个表达式时对正则表达式知之甚少,但无法从中得到期望的结果Regex 用于从长字符串中提取摘录的正则表达式,regex,ios7,nsstring,Regex,Ios7,Nsstring,我想使用正则表达式从长字符串中提取摘录 示例字符串:“今天以1:0击败阿根廷赢得世界杯的德国,在经济增长方面是否可能以输家告终?“” 要搜索的字符串:“that” 正则表达式的预期结果 “可能是德国” “第三届世界杯,就要结束了” 我想从字符串中搜索所需的文本,从搜索字符串的前后位置分别搜索-9和+9个字符。搜索字符串可以在给定字符串中出现多次 我正在开发一个iOS应用程序 使用iOS 7 到目前为止,我在创建这个表达式时对正则表达式知之甚少,但无法从中得到期望的结果 " (.){0,9} (
" (.){0,9} (that) {0,9} "
删除正则表达式中的空格。如果要捕获匹配的。然后将模式包含在捕获组中(即,
()
)
或
将前面和后面的字符设置为可选字符,以匹配看起来像将改变历史的
行。好吧,在表达式中,您只是缺少了第二个“.”,可能还缺少了空格的“?”
.{0,9} ?that ?.{0,9}
试试看
如果需要,可以添加()来创建组。我添加了“?”以使其符合您的其他示例:
“这将改变历史”
但是当搜索文本位于开始或结束位置时,您的答案是失败的,就像“这将改变历史”,在这种情况下,它不会搜索successfully@DineshKaushik以上示例的预期结果是什么。搜索字符串:“that will change history”搜索文本:“that”预期结果:“that will change”是的,几乎是,但仍然不完全是搜索字符串:“不是那将改变历史”搜索文本:“那”预期结果:“不是那将改变”即使在搜索字符串的任意一侧没有精确的9个字符,则显示可用的字符(少于9个)。您能分享更多预期结果的示例吗?
(?:.{9}|.{0,9})that(?:.{9}|.{0,9})
.{0,9} ?that ?.{0,9}