正则表达式:单词最多30个字符,但最接近30个字符

时间:2015-05-29 13:36:05

标签: regex

我需要一个正则表达式来表达"该单词最多包含30个字符,但在它之前最接近30个字符"。

例如,假设我有以下句子:

It is a dark time for the Rebellion. Although the 

表达式的结果应该返回" Rebellion"。

目前我使用表达式:

(?<=.{30})\b\w+\b

但这会回归&#34;虽然&#34;。 有人可以帮我摆脱这个吗?非常感谢!

1 个答案:

答案 0 :(得分:1)

我想你想要这样的东西,

^.{1,30}\b(\w+)

通过使用单词boundary \b,正则表达式引擎回溯(按顺序查找1到30个字符内的单词边界)然后尝试匹配单词边界以及后面的一个或多个单词字符

DEMO

^.{1,30}\K\b\w+

DEMO