Visual Basic - Identificar " (aspas) em strings
|
04-04-2012, 14:45
Mensagem: #1
|
|||
|
|||
Visual Basic - Identificar " (aspas) em strings
Boas
Como devem saber na maior parte das linguagens as strings têm de ser demarcadas com aspas ("). Mas quando estou a tratar uma string que ela própria tem aspas não consigo arranjar maneira de as referenciar. Ou seja: Imaginem a variável string frase: frase = O Livro "Programação for dummies" não funcionou comigo... À var frase quero substituir as " por '. Na função 'replace' são pedidos 3 argumentos: - a string a trabalhar, - a string a substituir dentro da string a trabalhar - e a nova string que toma o lugar da anterior O problema é que na referência de strings eu não posso usar as aspas, Replace(frase, " " "," ' ") - isto obviamente dá erro porque a segunda aspa do argumento 2, fecha a string de procura, e terceira está a abrir novamente uma string o que faz com tudo se torne inconsistente. Existe algum símbolo que o Visual Basic usa para poder referênciar que as aspas são o próprio caracter que estou à procura? Cumprimentos |
|||
04-04-2012, 15:22
Mensagem: #2
|
|||
|
|||
RE: Visual Basic - Identificar " (aspas) em strings
Boas,
Em VB também podes inserir aspas numa string com o código ASCII das aspas - Chr(34) - não sei se irá funcionar para o que queres. Ou podes definir uma constante para as aspas. Por exemplo: Código: Const aspas As String = """" Também não sei se fará o que pretendes. Já agora, e posso estar a dizer uma barbaridade, mas experimentaste no Replace colocar as aspas da mesma forma que defines a string? Ou seja, com duas aspas seguidas. Ex: Replace(frase, " "" "," ' ") Não sei isto ajuda.. mas fica a tentativa ![]() ![]() Pplware.com ![]() ![]() |
|||
04-04-2012, 16:19
Mensagem: #3
|
|||
|
|||
RE: Visual Basic - Identificar " (aspas) em strings
Vou ser sincero, pensava que não daria mas deu.
quando defino aspas = """ o compiler automaticamente completa como aspas = """" a partir daí uso a variável aspas para definir isso mesmo as ". Funciona na função Replace. Presumo que colocando " "" " na função replace não funciona porque ele considera os espaços também como caracteres a encontrar, terá mesmo de ser """". [Eu não precisava do exemplo da text.box1 (que também refere até o mesmo problema) porque os textos estão a ser lidos directamente de um txt com o StreamReader (equivalente ao Scanner do java). Como os texto têm aspas e precisava de separar a string em sub-strings pelas aspas deparei-me com este problema] Muito Obrigado. Cumprimentos |
|||
04-04-2012, 16:22
Mensagem: #4
|
|||
|
|||
RE: Visual Basic - Identificar " (aspas) em strings
Se funcionou, é o que interessa
![]() O exemplo da text.box1 foi só isso mesmo, um exemplo ![]() Cumps Pplware.com ![]() ![]() |
|||
« Mais Antigo | Mais Recente »
|
Utilizadores a ver este tópico: 1 Visitante(s)