Próximo: , Anterior: , Acima: Expressões   [Conteúdo][Índice]

6.5, Sequências de caracteres

Strings (sequências de caracteres) são contidas entre aspas duplas " em entradas de dados usados pelo Maxima, e mostradas com ou sem as aspas duplas, dependendo do valor escolhido para a variável global stringdisp.

Sequências de caracteres podem conter quaisquer caracteres, incluindo tabulações (tab), nova linha (ou fim de linha), e caracteres de retorno da cabeça de impressão (carriage return). A sequência \" é reconhecida com uma aspa dupla literal, e \\ como uma contrabarra literal. Quando a contrabarra aparecer no final de uma linha, a contrabarra e a terminação de linha (ou nova linha ou retorno de carro e nova linha) são ignorados, de forma que a sequência de caracteres continue na próxima linha. Nenhuma outra combinação especial de contrabarra com outro caractere é reconhecida; quando a contrabarra aparecer antes de qualquer outro caractere que não seja ", \, ou um fim de linha, a contrabarra é ignorada. Não exite caminho para representar um caractere especial (tal como uma tabulação, nova linha, ou retorno da cabeça de impressão) excepto através de encaixar o caractere literal na sequência de caracteres.

Não existe tipo de caractere no Maxima; um caractere simples é representado como uma sequência de caracteres de um único caractere.

Sequências de caracteres no Maxima são implementadas como símbolos do Lisp, não como sequencias de caracteres do not Lisp; o que pode mudar em futuras versões do Maxima. Maxima pode mostrar sequências de caracteres do Lisp e caracteres do Lisp, embora algumas outras operações (por exemplo, testes de igualdade) possam falhar.

O pacote adicional stringproc contém muitas funções que trabalham com sequências de caracteres.

Exemplos:

(%i1) s_1 : "Isso é uma sequência de caracteres  do Maxima.";
(%o1)               Isso é uma sequência de caracteres  do Maxima.
(%i2) s_2 : "Caracteres \"aspas duplas\" e contrabarras \\ encaixados em uma sequência de caracteres.";
(%o2) Caracteres "aspas duplas" e contrabarra \ encaixados em uma sequência de caracteres.
(%i3) s_3 : "Caractere de fim de linha encaixado
nessa sequência de caracteres.";
(%o3) Caractere de fim de linha encaixado
nessa sequência de caracteres.
(%i4) s_4 : "Ignore o \
caractere de \
fim de linha nessa \
sequência de caracteres.";
(%o4) Ignore o caractere de fim de linha nessa sequência de caracteres.
(%i5) stringdisp : false;
(%o5)                         false
(%i6) s_1;
(%o6)               Isso é uma sequência de caracteres  do Maxima.
(%i7) stringdisp : true;
(%o7)                         true
(%i8) s_1;
(%o8)              "Isso é uma sequência de caracteres  do Maxima."

Próximo: , Anterior: , Acima: Expressões   [Conteúdo][Índice]