10. december 2007 - 14:24Der er
1 kommentar og 1 løsning
Tekst uddrag og highlight m.v. problemer
Jeg har en masse tekst hvor ordet malaysia indgaar hist og her. Jeg oensker at faa tekstbidder, som giver mig 50 bogstaver foer og efter malaysia i teksten. Jeg har skrevet denne metode:
public static ArrayList<String> processMalaysiaText(String text) {
ArrayList<String> results = new ArrayList<String>(); List strpos = new ArrayList();
for(int i = 0; i < text.length() - 8; i++) { if(text.substring(i, 8).toLowerCase().equals("malaysia")) { strpos.add(i); } } for(int i = 0; i < strpos.size(); i++) { int pos = Integer.parseInt(strpos.get(i).toString()); int startpos = pos - 50; int endpos = pos + 57; String str = MiscFunctions.highlightTerm(text.substring(startpos, endpos), "malaysia"); str = MiscFunctions.highlightTerm(str, "Malaysia"); str = MiscFunctions.highlightTerm(str, "MALAYSIA"); results.add(str); } return results; }
Men jeg faar en StringIndexOutOfBoundsException med -1 i den linie, som staar efter det foerste for-loop. Det fatter jeg ikke...
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
<% String text = "sd fdsfkj lkfjdljs dklskj dfs lkdjfs dlkjfls slkdsj ldkdjf dslkjf malaysia dslkfsdlkds ds dslkjls flkdjs flkdj sf malaysia s flskfj fds df lkdsjf d f sflksjf sf ff f lkdsflksdlk fdlkjslkfjd f Malaysia slkfljf s s sldkjf s"; ArrayList<String> list = DatabaseAction.processMalaysiaText(text); for(String s: list) { out.write(s + "<br><br>"); } %>
men faar denne fejl:
org.apache.jasper.JasperException: Exception in JSP: /test.jsp:13
10: <body> 11: <% 12: String text = "sd fdsfkj lkfjdljs dklskj dfs lkdjfs dlkjfls slkdsj ldkdjf dslkjf malaysia dslkfsdlkds ds dslkjls flkdjs flkdj sf malaysia s flskfj fds df lkdsjf d f sflksjf sf ff f lkdsflksdlk fdlkjslkfjd f Malaysia slkfljf s s sldkjf s"; 13: ArrayList<String> list = DatabaseAction.processMalaysiaText(text); 14: for(String s: list) { 15: out.write(s + "<br><br>"); 16: }
java.lang.StringIndexOutOfBoundsException: String index out of range: -1 java.lang.String.substring(Unknown Source) use.DatabaseAction.processMalaysiaText(DatabaseAction.java:143) org.apache.jsp.test_jsp._jspService(test_jsp.java:61) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) javax.servlet.http.HttpServlet.service(HttpServlet.java
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.