复杂的正则表达式

Jos*_*e3d 3 regex

我想捕获字符串的子字符串,选择字符数,但如果任何单词被剪切,则直到最后一个空白.

例如,如果这是文本:

"这是文本lorem ipsum等的一个例子......"

12个字符会给出"这是一个e".在这种情况下,最后一个单词被剪切,因此结果应为"This is an".

它可以用正则表达式做到这一点吗?

Joh*_*ica 6

^.{0,11}\w\b
Run Code Online (Sandbox Code Playgroud)

这将找到12个字符,其中最后一个是单词字符,\w后跟单词分隔符\b.分词是一个零长度断言,它匹配单词的开头或结尾.

结果:\w\b确保匹配的最后一个字符是单词的最后一个字符,因此您不会得到部分单词.