如何使用Groovy正则表达式打破字符串中的大字

时间:2012-01-09 20:40:36

标签: regex groovy

我想将字符串中的大字(比如10个字符或更多)分成多行。例如,我想转换

  

我不会支持这种反对建构主义的行为!

  

我不会支持这种最反对的   ablishment
  阿里乌斯派!

2 个答案:

答案 0 :(得分:5)

String str = "I will not stand for this antidisestablishmentarianism!"

def newStr = (str =~ /(\w{10})/).replaceAll("\$1\n")

println newStr

10确定要分割的单词长度

答案 1 :(得分:1)

除了Nik的回答,您可能对替代解决方案感兴趣。

我不知道你的确切任务是什么,但有时连字可能更自然。


查看Hyphenator,Javascript库以进行客户端连字。

  

用法示例:http://hyphenator.googlecode.com/svn/tags/Version%204.0.0/WorkingExample.html


同时查看Hyphenation CSS3属性:http://www.w3.org/TR/css3-text/#hyphenation


还要考虑CSS3 overflow-wrap属性,如果没有选择,会强制单词在中间打破:

overflow-wrap: break-word;

overflow-wrap的旧版替代名称:

word-wrap: break-word;
  

用法示例:http://www.webdesignerwall.com/demo/word-wrap/

相关问题