Rechercher : dans
Par :

Inserer un retour a la ligne dans une chaine

Dernière réponse le 10 déc 2001 à 17:38:34 robert, le 5 déc 2001 à 17:03:01 
 Signaler ce message aux modérateurs

HELP
bonjour,

je cherche a insérer un retour a la ligne dans une chaine de caractere tout les 20 caractères;
Peut on determiner en VB si une valeur est un entier,comment fait on pour inserer un caractère
<%
texte=request("texte")%>

For i= 1 to len(texte)
if i\20=<%un entier%>
THEN
<%inserer unchr10%>
Next
end if%>

Merci de votre aide


Then

Meilleures réponses pour « inserer un retour a la ligne dans une chaine » dans :
Sed - Insertion de texte VoirInsérer du texte dans un fichier Introduction Syntaxe Ajout de texte Insérer une ligne avec "i" Ajouter une ligne avec "a" Échanger une ligne avec "c" Introduction Il est parfois utile de pouvoir insérer du texte en en-tête d'un ou...
Sed - Supprimer une ou plusieurs lignes d'un fichier VoirSupprimer une (ou plusieurs) ligne(s) d'un fichier Syntaxe sed '{[/]||[/]}d' sed '{[/][,][/]d' /.../ = délimiteurs n = le numéro de ligne chaîne = la chaîne contenue dans la...
Sed - Conversion retours chariots DOS (CRLF) / UNIX (LF) VoirConversion format de fichier DOS UNIX / UNIX DOS Préambule Ce qu'il faut savoir Conversion DOS vers UNIX Conversion UNIX vers DOS Préambule Il existe déjà des utilitaires (dos2unix et unix2dos) qui s'acquittent très bien ce cette...
VBScript - Les constantes VoirQu'est-ce qu'une constante ? Une constante est un nom, facilement mémorisable, remplaçant une valeur (nombre, chaîne, etc.) qui ne change pas. L'objectif d'une constante est d'une part de permettre de rendre un programme plus lisible, d'autre part...
Tableur - Les cellules VoirLa notion de cellule On appelle "cellule" l'intersection entre une ligne (horizontale) et une colonne (verticale) de la feuille de calcul. Ainsi le nom de la ligne combiné au nom de la colonne donne les coordonnées d'une cellule (le terme d'adresse...
Paragraphes en HTML VoirParagraphes Le langage HTML considère les paragraphes comme des blocs de texte. Les navigateurs répartissent au mieux leur contenu dans la fenêtre à moins qu'=un attribut NOWRAP ou NOBR soit spécifié explicitement. A l'intérieur d'un paragraphe,...

1

nabzone, le 5 déc 2001 à 17:37:34
  • +1

If vartype (i/20)=2 then ...

@+

Répondre à nabzone

6

robert, le 9 déc 2001 à 19:46:54

Merci de ton aide.Mon objectif est de permettre a un texte provenant d'un formulaire d'etre affiché sur page web en respectant une dimension donné (ça fonctionne) et d'afficher un lien hypertexte lorsque " http://" apparait (ca ne fonctionne pas).

<%request=("texte")%>

<%function texte (texte,nb caractere)
Nb= Int(Len(texte)\nbcaractere)
For compteur=0 to Nb
texteconst=texteconst+mid(texte,nb caractere * compteur+1,nbcaractere)+VbCrLf
texteconst=replace(texteconst,chr(13)&chr(10),"'<br>"
next

'remplacer un texte avec " http://" par un lien hypertexte


texteconst=replace(texteconst," http://","<a href='")
positionhttp=Instr(1,texteconst," http://",0)
If positionhttp>0 THEN
textea=replace(texteconst,chr(13)&chr(10),"'</a>"
positiondelafermeturedulien=Instr(1,textea,"'</a>",0)
position=positiondelafermeturedulien-positionhttp
textelien=left(textea,position)
END IF
textefinal=textelien + texteconstruction

end function%>

<%=textefinal(texte,20)%>

je te remercie encore

A+

Répondre à robert

2

blux, le 5 déc 2001 à 22:42:18

Salut,

en VB on ne sait pas insérer (de manière simple) un caractère, mais on sait concaténer des chaines, il faut donc découper ta chaine en paquets de 20 avec la fonction MID(chaine,deb,long) et ajouter un retour chariot.

En VB il existe une constante qui s'appelle VbCrLf

Ca donnera un truc comme ça.

' On compte combien on a de paquets de 20
Nb = Int(Len(texte)/20)
For i = 0 to Nb
' On extrait une chaine tous les 20 car avec une longueur de 20 et on concatène avec le saut de ligne
chaine = chaine + mid(texte,20*i+1,20) + VbCrLf
next i

Je ne suis pas sur que la boucle se finisse avec le bon nombre, mais l'esprit y est...

A+

Répondre à blux

3

robert, le 6 déc 2001 à 12:04:05

Merci,

A+

Répondre à robert

4

blux, le 6 déc 2001 à 18:53:41

Re salut,

pour savoir si un nombre est un multiple d'un autre, il suffit de savoir que la division de l'un par l'autre ne donne pas de reste.
En gros, si on prend la partie entière de la division, elle doit être égale au quotient. Et ça marche quel que soit le langage :-)
En VB, on aura un truc comme ça :

IF INT(Nb/Div) = (Nb/Div) THEN
Msgbox Nb & " est multiple de " & Div
END IF

A+

Répondre à blux

5

robert, le 9 déc 2001 à 19:41:51

Encore merci pour ton aide,le script que tu m'as envoyé fonctionne trés bien.Mon objectif est de permettre a un texte provenant d'un formulaire d'etre affiché sur page web en respectant une dimension donné (ça fonctionne) et d'afficher un lien hypertexte lorsque " http://" apparait (ca ne fonctionne pas).

<%request=("texte")%>

<%function texte (texte,nb caractere)
Nb= Int(Len(texte)\nbcaractere)
For compteur=0 to Nb
texteconst=texteconst+mid(texte,nb caractere * compteur+1,nbcaractere)+VbCrLf
texteconst=replace(texteconst,chr(13)&chr(10),"'<br>"
next

'remplacer un texte avec " http://" par un lien hypertexte


texteconst=replace(texteconst," http://","<a href='")
positionhttp=Instr(1,texteconst," http://",0)
If positionhttp>0 THEN
textea=replace(texteconst,chr(13)&chr(10),"'</a>"
positiondelafermeturedulien=Instr(1,textea,"'</a>",0)
position=positiondelafermeturedulien-positionhttp
textelien=left(textea,position)
END IF
textefinal=textelien + texteconstruction

end function%>

<%=textefinal(texte,20)%>

je te remercie encore

A+

Répondre à robert

7

 rob, le 10 déc 2001 à 17:38:34

<HTML>
<BODY>
<%
texte=request("texte")
%>
<%


'------------------- DECOUPAGE DU TEXTE PAR LE NOMBRE DE CARACTERE PAR LIGNE ----------------

' On compte combien on a de paquets de 20
nbcaractere=20
Nb = Int(Len(texte)/nbcaractere)
For compteurnbcaractere = 0 to Nb
' On extrait une chaine tous les "nbcaractere" car avec une longueur de "nbcaractere" et on concatène avec le saut de ligne
texteconstruction = texteconstruction + mid(texte,nbcaractere*compteurnbcaractere+1,nbcaractere) + VbCrLf
'texte1= replace(texteconstruction,chr(13)&chr(10),"<br>")
next

positionhttp=Instr(1,texteconstruction," http://",1)
IF positionhttp>0 THEN
texte1=replace(texteconstruction," http://","<a href='")
textev=replace(texte1,"<a href='",chr(10))

'espacevide=Instr(1,textev,
positiondebut=Instr(1,texte1,"<a href='",1)
textea=mid(texte1,positiondebut)
positionfin=Instr(4,textea,chr(13)&chr(10),1)
textefin=mid(textea,positionfin)
texteb=mid(texte1,positiondebut,positionfin+2)
textec=replace(texteb,"<a href='",chr(10))
textee=mid(texte1,positionfin+1)
textedebut=mid(texte1,1,positiondebut-1)
textelien=replace(textea,"<a href='",chr(10))
finlien=Instr(1,textelien,chr(13)&chr(10),1)
textefinlien=Left(textelien,finlien+4)
texteapreslien=Right(textelien,finlien+4)
texteL= Left(textev,10)
texteR= Right(texte1,positionfin)
texte2= replace(texteL,"<a href='",chr(10))
texte3= replace(texte2,"</a>",chr(10))

texteconstruction= textedebut + textea +"'>" + textefinlien + "</a>" + texteapreslien
END IF

'------- on envoie le texte final a la fonction ---



'texteconstruction= replace(texteconstruction,chr(13)&chr(10),"<br>")
textareaajoutbalise=texteconstruction

%>










<%=texteconstruction%>

Répondre à rob