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

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

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

Unicode para String

editar

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

A função inversa de Chr é Asc, que opera sobre o primeiro caracter da string, retornando seu código Unicode[2]

Substrings

editar

Para mais detalhes e outras funções, ver a documentação[2]

Referências

editar
  1. String Variables, site wiki.services.openoffice.org
  2. 2,0 2,1 2,2 2,3 2,4 Operators, site wiki.services.openoffice.org
  3. Strings (OpenOffice.org BASIC Runtime Library), site wiki.services.openoffice.org
  4. Numbers, site wiki.services.openoffice.org

Ver também

editar
 
Wikipedia
A Wikipédia tem mais sobre este assunto:
Strings