我想将字符串中的大字(比如10个字符或更多)分成多行。例如,我想转换
我不会支持这种反对建构主义的行为!
到
我不会支持这种最反对的 ablishment
阿里乌斯派!
答案 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;