使用正则表达式删除“...”后的所有内容

时间:2013-08-29 10:29:54

标签: ruby regex

我有一个这样的字符串:

  

“产品说明Signature系列治疗制定了策略   为星际争霸II粉丝指导一个可收集的项目。单人战役   WALKTHROUGH涵盖所有可能的任务分支,包括奖金   整个活动的目标。独家MAPS仅在   官方指南,显示单位的位置,... \ n \ n \ n \ n \ n \ n读取更多\ n“

如何使用正则表达式.text[/(...)/]删除...之后的内容,以便输出如下所示?

  

“产品说明Signature系列治疗制定了策略   为星际争霸II粉丝指导一个可收集的项目。单人战役   WALKTHROUGH涵盖所有可能的任务分支,包括奖金   整个活动的目标。独家MAPS仅在   官方指南,显示单位的位置,......“

4 个答案:

答案 0 :(得分:3)

你需要逃避这段时间。

string.sub(/(?<=\.\.\.).*/m, "")

string[/.*\.\.\./m]

答案 1 :(得分:2)

你应该可以使用split方法,就像那样(我不熟悉Ruby)。

arr = text.split("...")  #=> text before '...' and text after '...'
arr[0]                   #=> text before '...'

答案 2 :(得分:1)

无需使用外观,您可以简单地执行以下操作:

string.sub(/\.{3}.*/s, "...")

答案 3 :(得分:0)

您也可以

/(^.*)(\.\­.\..*)/.ma­tch(string).captur­es[0]