Mais
Como dividir uma corda por espaço
Preciso de dividir a minha corda por espaços. Para isto eu tentei:
str = "Hello I'm your String";
String[] splited = str.split(" ");
Mas parece que não... 39; não funciona.
300
14
O que você tem deve funcionar. Se, no entanto, os espaços fornecidos estão por defeito para... algo mais? Você pode usar o espaço em branco regex:
Isto fará com que qualquer número de espaços consecutivos dividam o seu cordão em fichas.
Como nota lateral, I'm not sure "splot;splited" é uma palavra :) Eu acredito que o estado de ser vítima de uma divisão também é "split". It'é uma daquelas coisas gramaticais complicadas :-) Não tentando ser picuinhas, apenas imaginei que eu'iria passá-lo adiante!
Embora a resposta aceita seja boa, esteja ciente de que você terminará com uma string principal vazia se a sua string de entrada começar com um espaço branco. Por exemplo, com:
O resultado será:
Por isso, talvez queiras aparar o fio antes de o dividires:
Eu acredito que colocar uma expressão regular nos parênteses str.split deve resolver o problema. O método Java String.split() é baseado em expressões regulares, então o que você precisa é:
Utilize
Stringutils.split()
para dividir a string por passos brancos. Por exemploStringUtils.split("Hello World")
retorna "Hello" e "World";Para resolver o caso mencionado, utilizamos o método split como este
quando imprimirmos a matriz dividida, a saída será :
Olá
I'm
o seu
Cordão
[Para o exemplo completo, verifique aqui][1]
[1]: http://java-interview-questions.com/how-to-separate-strings-in-java-by-spaces-with-example
Experimente
http://download.oracle.com/javase/tutorial/essential/regex/pre_char_classes.html
Experimente este aqui.
se de alguma forma você não'não quer usar o método String split então você pode usar a classe StringTokenizer em Java como...
Uma maneira alternativa seria:
Vi-o [aqui][1]
[1]: https://github.com/apache/spark/blob/master/examples/src/main/java/org/apache/spark/examples/streaming/JavaNetworkWordCount.java
Exemplo muito simples abaixo:
Espero que ajude.
OK, então temos que fazer a divisão, já que você já tem a resposta que eu generalizaria.
Se você quiser dividir qualquer string por espaços, delimitador(chars especiais).
Primeiro, remova o espaço principal, pois eles criam a maior parte dos problemas.
Primeiro remova o espaço principal que pode ser espaço, separador, etc.
Agora se você quiser dividir por espaço ou qualquer char especial.
Mas como w contém [a-zA-Z0-9], então se você quiser dividir por sublinhado() use também
Aqui está um método para aparar uma corda que tem um "," ou espaço branco
você pode saperate string usando o código abaixo
Já que's já faz um tempo desde que estas respostas foram postadas, aqui's outra maneira mais atual de fazer o que's perguntou:
Agora você tem uma lista de cordas (que é indiscutivelmente melhor do que uma matriz); se você precisa de um array, você pode fazer
output.toArray(new String[0]);
**Simples to Spit String by Space***