Próximo: Desigualdade, Anterior: Identificadores, Acima: Expressões [Conteúdo][Índice]
Strings (seqüê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
.
Seqüê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 seqüê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 seqüê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)
exceto através de encaixar o caractere literal na seqüência de caracteres.
Não existe tipo de caractere no Maxima; um caractere simples é representado como uma seqüência de caracteres de um único caractere.
Seqüências de caracteres no Maxima são implementadas como símbolos do Lisp, não como seqüencias de caracteres do not Lisp; o que pode mudar em futuras versões do Maxima. Maxima pode mostrar seqüê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 seqüências de caracteres.
Exemplos:
(%i1) s_1 : "Isso é uma seqüência de caracteres do Maxima."; (%o1) Isso é uma seqüência de caracteres do Maxima. (%i2) s_2 : "Caracteres \"aspas duplas\" e contrabarras \\ encaixados em uma seqüência de caracteres."; (%o2) Caracteres "aspas duplas" e contrabarra \ encaixados em uma seqüência de caracteres. (%i3) s_3 : "Caractere de fim de linha encaixado nessa seqüência de caracteres."; (%o3) Caractere de fim de linha encaixado nessa seqüência de caracteres. (%i4) s_4 : "Ignore o \ caractere de \ fim de linha nessa \ seqüência de caracteres."; (%o4) Ignore o caractere de fim de linha nessa seqüência de caracteres. (%i5) stringdisp : false; (%o5) false (%i6) s_1; (%o6) Isso é uma seqüência de caracteres do Maxima. (%i7) stringdisp : true; (%o7) true (%i8) s_1; (%o8) "Isso é uma seqüência de caracteres do Maxima."
Próximo: Desigualdade, Anterior: Identificadores, Acima: Expressões [Conteúdo][Índice]