midrange.com code scratchpad |
Name:
WordWrap-Single word
|
Scriptlanguage:
Java
|
Tabwidth:
4
|
Date:
09/19/2008 02:04:16 pm
|
IP:
Logged
|
|
Description:
The user was to lazy to give a description
|
Code:
- import java.util.LinkedList;
- import java.util.List;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
-
- public class WordWrap {
-
- private Pattern wrapRE = null;
-
- public WordWrap(int lineLength) {
- this.wrapRE = Pattern.compile("(\\S\\S{" + lineLength + ",}|.{1," + lineLength + "})(\\s+|$)");
- System.out.println("Compiled pattern:" + wrapRE.pattern());
- }
-
- public String[] wrapText(String str) {
- List list = new LinkedList();
- Matcher m = this.wrapRE.matcher(str);
- while (m.find()) {
- list.add(m.group());
- }
- return (String[]) list.toArray(new String[list.size()]);
- }
-
- public static void main(String args[]) {
- WordWrap ww = new WordWrap(40);
-
-
-
-
-
-
- String str = "Thisisalineoftext111111.T2hisi2sal2soa2lin2e" +
- "willeventuallyrunoveratsstringislongerthannormal.Somwer" +
- "somemoretext\noveratsomepointsimplestri."+
- "Thisisthelastsentenceintheparagraph.";
-
- String[] results = ww.wrapText(str);
-
- for (int i = 0; i < results.length; i++) {
- System.out.println(results[i]);
- }
- }
- }
-
|
|
|