OpenOffice.org/Macro/BASIC/Strings
Este capítulo faz parte do livro sobre OpenOffice.org, e é um detalhamento do BASIC (OpenOffice.org BASIC) usado nas Macros
Uma String tem duas características:
- seu tamanho (que pode ser zero ou um número inteiro positivo)
- seus caracteres
Aqui já começa a ambiguidade: o que é um caracter? Se adotarmos apenas o conjunto ASCII, estamos limitados a 128 caracteres (ou 256), mas se adotarmos o Unicode, então praticamente qualquer coisa pode ser um caracter.
No OpenOffice.org BASIC, as strings tem as seguintes características[1]:
- seu tamanho é limitado 65536 caracteres
- os caracteres são Unicode
Declaração
[editar | editar código-fonte]Uma string é declarada usando-se aspas duplas; um par de aspas duplas dentro da string indicam que aspas duplas fazem parte da string.
Por exemplo, o código abaixo:
Dim str As String
str = "Quem mandou você ""pensar""? Eu não te dou informação suficiente para você pensar!"
MsgBox str
irá exibir o texto:
Quem mandou você "pensar"? Eu não te dou informação suficiente para você pensar!
Concatenação
[editar | editar código-fonte]A concatenação de strings é feita usando-se & ou usando-se +[2]. A documentação recomenda o uso de & preferencialmente a +[2].
Dim str As String
Dim str1 As String
str = "Hello, " & "World!"
str1 = "Hello, " + "World!"
Conversão entre Strings e Inteiros
[editar | editar código-fonte]Unicode para String
[editar | editar código-fonte]A conversão de um código ASCII ou Unicode para a String (de tamanho um) correspondente é feita pela função Chr[3]. O texto abaixo mostra alguns caracteres japoneses (katakana) sem sentido. &H30A0 é a forma de representar um número hexadecimal[4]:
Dim str As String
str = Chr(&H30A1) & Chr(&H30A2) & Chr(&H30A3)
MsgBox str
Esta função é muito usada para formatar strings com caracteres de controle, por exemplo, incluindo-se quebras de linha (Chr(13))[2]:
MsgBox "A strange game, Mr Falken!" & Chr(13) & "The only winning move is not to play." &
Chr(13) & "How about a nice game of chess?"
String para Unicode
[editar | editar código-fonte]A função inversa de Chr é Asc, que opera sobre o primeiro caracter da string, retornando seu código Unicode[2]
Substrings
[editar | editar código-fonte]Para mais detalhes e outras funções, ver a documentação[2]
Referências
[editar | editar código-fonte]- ↑ String Variables, site wiki.services.openoffice.org
- ↑ 2,0 2,1 2,2 2,3 2,4 Operators, site wiki.services.openoffice.org
- ↑ Strings (OpenOffice.org BASIC Runtime Library), site wiki.services.openoffice.org
- ↑ Numbers, site wiki.services.openoffice.org
Ver também
[editar | editar código-fonte]- Introdução à programação/Strings - conceitos